.home{padding:2rem;text-align:center;font-family:Arial,sans-serif;max-width:800px;margin:0 auto}.home h1{font-size:2.5rem;margin-bottom:1rem;color:#333}@media(max-width:768px){.home h1{font-size:2rem}}.home>p{font-size:1.2rem;color:#666;margin-bottom:2rem}@media(max-width:768px){.home>p{font-size:1rem}}.navigation{margin:2rem 0}.navigation h2{font-size:1.5rem;margin-bottom:1.5rem;color:#333}@media(max-width:768px){.navigation h2{font-size:1.3rem}}.navButtons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@media(max-width:768px){.navButtons{flex-direction:column;align-items:center}}.navButton{display:flex;flex-direction:column;align-items:center;padding:1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;text-decoration:none;border-radius:12px;min-width:200px;transition:all .3s ease;box-shadow:0 4px 6px rgba(0,0,0,.1)}.navButton:hover{transform:translateY(-2px);box-shadow:0 8px 15px rgba(0,0,0,.2)}.navButton .icon{font-size:2rem;margin-bottom:.5rem}.navButton .text{font-size:1.2rem;font-weight:600;margin-bottom:.25rem}.navButton .description{font-size:.9rem;opacity:.9}@media(max-width:768px){.navButton{min-width:250px;padding:1.25rem}.navButton .icon{font-size:1.75rem}.navButton .text{font-size:1.1rem}.navButton .description{font-size:.85rem}}.features{margin-top:2rem}.features h2{font-size:1.5rem;margin-bottom:1rem;color:#333}@media(max-width:768px){.features h2{font-size:1.3rem}}.featureList{list-style:none;padding:0;margin:0}.featureList li{padding:.5rem 0;font-size:1rem;color:#555;border-bottom:1px solid #eee}.featureList li:last-child{border-bottom:none}@media(max-width:768px){.featureList li{font-size:.9rem;padding:.4rem 0}}.status{margin-top:2rem;color:#666}.status p{font-style:italic;font-size:.9rem}@media(max-width:768px){.status p{font-size:.8rem}}.error-boundary{text-align:center;padding:2rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:1rem 0}.error-boundary h2{color:#dc2626;margin-bottom:1rem}.error-boundary button{background-color:#dc2626;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer}.error-boundary button:hover{background-color:#b91c1c}.error-message{background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:12px;margin:1rem 0;color:#dc2626}.error-message p{margin:0 0 8px}.error-message .retry-button{background-color:#dc2626;color:#fff;border:none;padding:4px 8px;border-radius:4px;font-size:12px;cursor:pointer}.error-message .retry-button:hover{background-color:#b91c1c}.validation-errors{list-style:none;padding:0;margin:8px 0 0}.validation-errors .validation-error{color:#dc2626;font-size:12px;margin-bottom:4px}.validation-errors .validation-error:last-child{margin-bottom:0}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem}.loading-spinner.small{padding:.5rem}.loading-spinner.small .spinner{width:16px;height:16px;border-width:2px}.loading-spinner.small .loading-message{font-size:12px}.loading-spinner.medium{padding:2rem}.loading-spinner.medium .spinner{width:24px;height:24px;border-width:3px}.loading-spinner.medium .loading-message{font-size:14px}.loading-spinner.large{padding:4rem}.loading-spinner.large .spinner{width:32px;height:32px;border-width:4px}.loading-spinner.large .loading-message{font-size:16px}.loading-spinner .spinner{border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:8px}.loading-spinner .loading-message{color:#6b7280;margin:0}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:4px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page{--gray-rgb:0,0,0;--gray-alpha-200:rgba(var(--gray-rgb),0.08);--gray-alpha-100:rgba(var(--gray-rgb),0.05);--button-primary-hover:#383838;--button-secondary-hover:#f2f2f2;display:grid;grid-template-rows:20px 1fr 20px;align-items:center;justify-items:center;min-height:100svh;padding:80px;grid-gap:64px;gap:64px;font-family:var(--font-geist-sans)}@media(prefers-color-scheme:dark){.page{--gray-rgb:255,255,255;--gray-alpha-200:rgba(var(--gray-rgb),0.145);--gray-alpha-100:rgba(var(--gray-rgb),0.06);--button-primary-hover:#ccc;--button-secondary-hover:#1a1a1a}}.main{display:flex;flex-direction:column;gap:32px;grid-row-start:2}.main ol{font-family:var(--font-geist-mono);padding-left:0;margin:0;font-size:14px;line-height:24px;letter-spacing:-.01em;list-style-position:inside}.main li:not(:last-of-type){margin-bottom:8px}.main code{font-family:inherit;background:var(--gray-alpha-100);padding:2px 4px;border-radius:4px;font-weight:600}.ctas{display:flex;gap:16px}.ctas a{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:128px;height:48px;padding:0 20px;border:1px solid rgba(0,0,0,0);transition:background .2s,color .2s,border-color .2s;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:20px;font-weight:500}.ctas a.primary{background:var(--foreground);color:var(--background);gap:8px}.ctas a.secondary{border-color:var(--gray-alpha-200);min-width:158px}.footer{grid-row-start:3;display:flex;gap:24px}.footer a{display:flex;align-items:center;gap:8px}.footer img{flex-shrink:0}@media(hover:hover)and (pointer:fine){.ctas a.primary:hover{background:var(--button-primary-hover);border-color:rgba(0,0,0,0)}.ctas a.secondary:hover{background:var(--button-secondary-hover);border-color:rgba(0,0,0,0)}.footer a:hover{text-decoration:underline;text-underline-offset:4px}}@media(max-width:600px){.page{padding:32px 32px 80px}.main{align-items:center}.main ol{text-align:center}.ctas{flex-direction:column}.ctas a{font-size:14px;height:40px;padding:0 16px}.ctas a.secondary{min-width:auto}.footer{flex-wrap:wrap;align-items:center;justify-content:center}}@media(prefers-color-scheme:dark){.logo{filter:invert(1)}}.greensupia-header{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px rgba(0,0,0,.1);position:-webkit-sticky;position:sticky;top:0;z-index:1000;transition:box-shadow .15s ease}.greensupia-header__container{max-width:1200px;margin:0 auto;padding:0 1rem}@media(max-width:768px){.greensupia-header__container{margin-bottom:5%}}.greensupia-header__content{display:flex;justify-content:space-between;align-items:center;height:70px;position:relative}.greensupia-header__logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0;z-index:10}.greensupia-header__logo-text{font-size:1.75rem;font-weight:700;color:#059669;transition:color .15s ease}.greensupia-header__logo-text:hover{color:#047857}.greensupia-header__logo-icon{width:32px;height:32px;margin-right:.75rem;background:#059669;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.25rem}.greensupia-header__nav{display:flex;align-items:center;gap:2rem;position:absolute;left:50%;transform:translateX(-50%)}@media(max-width:768px){.greensupia-header__nav{display:none}}.greensupia-header__nav-item{position:relative;text-decoration:none;color:#374151;font-weight:500;font-size:1rem;padding:.5rem 1rem;border-radius:8px;transition:background-color .15s ease}.greensupia-header__nav-item--active,.greensupia-header__nav-item:hover{color:#059669;background-color:rgba(5,150,105,.1)}.greensupia-header__nav-item:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:2px;background:#059669;transition:width .15s ease;transform:translateX(-50%)}.greensupia-header__nav-item:hover:after{width:80%}.greensupia-header__mobile-menu{display:none;flex-direction:column;align-items:center;gap:1rem;padding:1rem;background:#fff;border-top:1px solid #e2e8f0;box-shadow:0 4px 6px rgba(0,0,0,.1);z-index:1001}@media(min-width:769px){.greensupia-header__mobile-menu{display:none!important}}.greensupia-header__mobile-menu--open{display:flex}@media(min-width:769px){.greensupia-header__mobile-menu--open{display:none!important}}.greensupia-header__mobile-toggle{display:none;background:none;border:none;color:#374151;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:8px;transition:background-color .15s ease;position:absolute;right:0;z-index:1002}@media(max-width:768px){.greensupia-header__mobile-toggle{display:block}}.greensupia-header__mobile-toggle:hover{background-color:rgba(5,150,105,.1);color:#059669}.greensupia-header__cta{display:flex;align-items:center;gap:1rem}@media(max-width:768px){.greensupia-header__cta{display:none}}.greensupia-header__cta-button{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;text-decoration:none;transition:all .2s ease;border:2px solid rgba(0,0,0,0)}.greensupia-header__cta-button--primary{background:#059669;color:#fff;box-shadow:0 4px 6px rgba(5,150,105,.25)}.greensupia-header__cta-button--primary:hover{transform:translateY(-2px);box-shadow:0 6px 12px rgba(5,150,105,.35)}.greensupia-header__cta-button--secondary{background:rgba(0,0,0,0);color:#059669;border-color:#059669}.greensupia-header__cta-button--secondary:hover{background:#059669;color:#fff;transform:translateY(-2px)}.greensupia-header--scrolled{background:hsla(0,0%,100%,.98);box-shadow:0 2px 8px rgba(0,0,0,.15)}.organization-layout{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem}@media(max-width:1023px){.organization-layout{grid-template-columns:1fr}}.organization-list-section{width:100%}.organization-preview-section-wrapper{margin-left:auto;width:100%}.organization-thumbnail{width:32px;height:32px;min-width:32px;min-height:32px}.organization-preview__container{max-width:28rem}.organization-preview__image-wrapper{max-width:24rem}.organization-preview__image{max-height:200px}.organization-list__content{display:flex;align-items:center;justify-content:space-between}.organization-list__info{display:flex;align-items:center;gap:var(--spacing-md)}.organization-list__details .title{font-weight:500;font-size:.875rem}.organization-list__details .date{font-size:.75rem;color:var(--muted-foreground)}.organization-list__actions{display:flex;align-items:center;gap:var(--spacing-md)}.pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);padding:var(--spacing-lg) 0;border-top:1px solid var(--border)}.pagination__info{flex-shrink:0}.pagination__controls,.pagination__numbers{display:flex;align-items:center;gap:var(--spacing-xs)}.pagination__button{display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;height:2.5rem;padding:0 var(--spacing-sm);border:1px solid var(--border);border-radius:var(--radius);background:#fff;color:var(--foreground);font-size:.875rem;font-weight:500;text-decoration:none;transition:all var(--transition-fast);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pagination__button:hover:not(:disabled){background:var(--primary-light);border-color:var(--primary);color:var(--primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.pagination__button:active:not(:disabled){transform:translateY(0)}.pagination__button:focus{outline:none;box-shadow:0 0 0 3px rgba(102,126,234,.1)}.pagination__button--active{background:var(--gradient-primary);border-color:var(--primary);color:#fff;box-shadow:var(--shadow-md)}.pagination__button--active:hover{background:var(--gradient-primary);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-lg)}.pagination__button--disabled{cursor:not-allowed;opacity:.5}.pagination__button--disabled,.pagination__button--disabled:hover{background:var(--background);border-color:var(--border);color:var(--muted-foreground)}.pagination__button--disabled:hover{transform:none;box-shadow:none}.pagination__button--next,.pagination__button--prev{font-size:1.25rem;font-weight:600;min-width:2.5rem}.pagination__button--ellipsis{cursor:default;border:none;background:rgba(0,0,0,0);min-width:auto;padding:0 var(--spacing-xs)}.pagination__button--ellipsis:hover{background:rgba(0,0,0,0);border:none;color:var(--foreground);transform:none;box-shadow:none}@media(max-width:640px){.pagination{flex-direction:column;gap:var(--spacing-md);align-items:center}.pagination__controls{gap:var(--spacing-xs)}.pagination__button{min-width:2.25rem;height:2.25rem;font-size:.75rem}.pagination__button--next,.pagination__button--prev{font-size:1rem;min-width:2.25rem}}@media(prefers-color-scheme:dark){.pagination{border-top-color:var(--border)}.pagination__button{background:var(--background);border-color:var(--border);color:var(--foreground)}.pagination__button:hover:not(:disabled){background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.pagination__button--disabled{background:var(--background);border-color:var(--border);color:var(--muted-foreground)}.pagination__button--ellipsis,.pagination__button--ellipsis:hover{background:rgba(0,0,0,0);border:none}.pagination__button--ellipsis:hover{color:var(--foreground)}}.toggle-switch{position:relative;width:44px;height:24px;display:inline-block;vertical-align:middle;margin-bottom:0;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0;position:absolute;z-index:1}.toggle-switch input:disabled+.slider{opacity:.5;cursor:not-allowed}.toggle-switch input:checked+.slider{background-color:#19c37d}.toggle-switch input:checked+.slider:before{transform:translateX(20px)}.toggle-switch input:focus+.slider{box-shadow:0 0 0 3px rgba(25,195,125,.1)}.toggle-switch .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;border-radius:24px;transition:background .2s}.toggle-switch .slider:before{position:absolute;content:"";height:20px;width:20px;left:2px;bottom:2px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-backdrop .modal-content{background:#fff;border-radius:8px;box-shadow:0 10px 25px rgba(0,0,0,.2);max-width:90vw;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-backdrop .modal-content.modal-small{width:400px}.modal-backdrop .modal-content.modal-medium{width:600px}.modal-backdrop .modal-content.modal-large{width:800px}.modal-backdrop .modal-content .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 0;border-bottom:1px solid #e5e7eb}.modal-backdrop .modal-content .modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.modal-backdrop .modal-content .modal-header .modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:.25rem;border-radius:4px;color:#6b7280;transition:all .2s}.modal-backdrop .modal-content .modal-header .modal-close:hover{background-color:#f3f4f6;color:#374151}.modal-backdrop .modal-content .modal-header .modal-close:focus{outline:2px solid #3b82f6;outline-offset:2px}.modal-backdrop .modal-content .modal-body{padding:1.5rem;overflow-y:auto;flex:1 1}.modal-form .form-group{margin-bottom:1.5rem}.modal-form .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151}.modal-form .form-group label.required:after{content:" *";color:#ef4444}.modal-form .form-group input,.modal-form .form-group select,.modal-form .form-group textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s}.modal-form .form-group input:focus,.modal-form .form-group select:focus,.modal-form .form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.modal-form .form-group input::placeholder,.modal-form .form-group select::placeholder,.modal-form .form-group textarea::placeholder{color:#9ca3af}.modal-form .form-group input.error,.modal-form .form-group input.error:focus,.modal-form .form-group select.error,.modal-form .form-group select.error:focus,.modal-form .form-group textarea.error,.modal-form .form-group textarea.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.1)}.modal-form .form-group textarea{resize:vertical;min-height:100px}.modal-form .form-group .error-message{display:flex;align-items:center;gap:.5rem;color:#ef4444;font-size:.875rem;margin-top:.25rem}.modal-form .form-group .error-message .error-icon{font-size:1rem}.modal-form .form-group .help-text{margin-top:.25rem;font-size:.75rem;color:#6b7280}.modal-form .form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:2rem;padding-top:1rem;border-top:1px solid #e5e7eb}.modal-form .form-actions .cancel-btn{padding:.75rem 1.5rem;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;font-weight:500;cursor:pointer;transition:all .2s}.modal-form .form-actions .cancel-btn:hover{background-color:#e5e7eb}.modal-form .form-actions .submit-btn{padding:.75rem 1.5rem;background-color:#3b82f6;border:1px solid #3b82f6;border-radius:6px;color:#fff;font-weight:500;cursor:pointer;transition:all .2s}.modal-form .form-actions .submit-btn:hover{background-color:#2563eb}.modal-form .form-actions .submit-btn:disabled{background-color:#9ca3af;border-color:#9ca3af;cursor:not-allowed}.image-upload-container .image-preview-area{margin-bottom:1rem}.image-upload-container .image-preview{display:flex;flex-direction:column;align-items:center;gap:.75rem}.image-upload-container .image-preview .preview-image{max-width:200px;max-height:150px;width:auto;height:auto;border-radius:var(--radius);border:2px solid var(--border);object-fit:cover}.image-upload-container .image-preview .image-actions{display:flex;gap:.5rem}.image-upload-container .upload-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:200px;height:150px;border:2px dashed var(--border);border-radius:var(--radius);background-color:var(--background-secondary);cursor:pointer;transition:all .2s ease}.image-upload-container .upload-placeholder:hover{border-color:var(--primary);background-color:var(--background-hover)}.image-upload-container .upload-placeholder .upload-icon{font-size:2rem;margin-bottom:.75rem}.image-upload-container .upload-placeholder span{text-align:center;color:var(--text-secondary);font-size:.875rem;line-height:1.4}.image-upload-container .upload-placeholder span.upload-hint{font-size:.75rem;color:var(--text-muted);margin-top:.375rem}.image-upload-container .upload-loading{display:flex;flex-direction:column;align-items:center;gap:.5rem}.image-upload-container .upload-loading .spinner{width:24px;height:24px;border-top:2px solid var(--border);border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}.image-upload-container .upload-loading span{color:var(--text-secondary);font-size:.875rem}.image-upload-container .upload-error{margin-top:.5rem;padding:.5rem;background-color:var(--error-bg);border:1px solid var(--error-border);border-radius:var(--radius)}.modal-confirm{text-align:center}.modal-confirm p{margin-bottom:1.5rem;color:var(--text-primary);font-size:1rem;line-height:1.5}.modal-confirm .modal-actions{display:flex;justify-content:center;gap:.75rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.greensupia-layout{min-height:100vh;display:flex;flex-direction:column;background-image:url(/home_background.png);background-size:cover;background-position:50%;background-repeat:no-repeat;background-attachment:fixed;position:relative}.greensupia-layout:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(249,250,251,.9);z-index:1}.greensupia-layout main{flex:1 1;display:flex;flex-direction:column;position:relative;z-index:2}.greensupia-layout footer{margin-top:auto;background:linear-gradient(135deg,#ffffff,#f8fafc);border-top:1px solid #e2e8f0;color:#374151;padding:2rem 0;text-align:center;box-shadow:0 -1px 3px rgba(0,0,0,.1);position:relative;z-index:2}.greensupia-section{margin-bottom:3rem}.greensupia-home__container{max-width:80rem;margin:0 auto;padding:0 1rem;position:relative;z-index:2}.greensupia-banner-full{width:100%;margin-bottom:3rem;position:relative;z-index:2}.greensupia-greeting{margin-bottom:3rem;text-align:center}.greensupia-greeting__title{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:2rem;text-align:center}@media(max-width:768px){.greensupia-greeting__title{font-size:1.125rem;margin-bottom:1.25rem}}.greensupia-greeting__container{background:#fff;border-radius:.5rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);border:1px solid #e5e7eb;padding:3rem;text-align:center;max-width:80rem;margin:0 auto}@media(max-width:768px){.greensupia-greeting__container{padding:2rem}}.greensupia-greeting__content{color:#374151;line-height:1.7;text-align:center;font-size:1.125rem;max-width:60rem;margin:0 auto}@media(max-width:768px){.greensupia-greeting__content{font-size:.875rem;line-height:1.5}}.greensupia-greeting__content h1,.greensupia-greeting__content h2,.greensupia-greeting__content h3,.greensupia-greeting__content h4,.greensupia-greeting__content h5,.greensupia-greeting__content h6{color:#111827;margin-bottom:1rem;text-align:center}@media(max-width:768px){.greensupia-greeting__content h1,.greensupia-greeting__content h2,.greensupia-greeting__content h3,.greensupia-greeting__content h4,.greensupia-greeting__content h5,.greensupia-greeting__content h6{font-size:1rem;margin-bottom:.5rem}}.greensupia-greeting__content p{margin-bottom:1rem;text-align:center}@media(max-width:768px){.greensupia-greeting__content p{margin-bottom:.5rem}}.greensupia-greeting__content ol,.greensupia-greeting__content ul{text-align:left;margin:1rem 0;padding-left:2rem}@media(max-width:768px){.greensupia-greeting__content ol,.greensupia-greeting__content ul{margin:.5rem 0;padding-left:1.25rem}}.greensupia-greeting__content li{margin-bottom:.5rem}@media(max-width:768px){.greensupia-greeting__content li{margin-bottom:.25rem}}.greensupia-greeting__content a{color:#059669;text-decoration:none;font-weight:500}.greensupia-greeting__content a:hover{color:#047857;text-decoration:underline}.greensupia-greeting__content img{max-width:100%;height:auto;border-radius:.5rem;margin:1rem 0}@media(max-width:768px){.greensupia-greeting__content img{max-width:80%;margin:.5rem auto;display:block}}.greensupia-greeting__content blockquote{border-left:4px solid #10b981;padding-left:1rem;margin:1rem 0;font-style:italic;color:#6b7280}.greensupia-greeting__content code{background-color:#f3f4f6;padding:.25rem .5rem;border-radius:.25rem;font-family:Courier New,monospace;font-size:.875rem}.greensupia-greeting__content pre{background-color:#1f2937;color:#f9fafb;padding:1rem;border-radius:.5rem;overflow-x:auto;margin:1rem 0}.greensupia-greeting__content pre code{background:none;padding:0;color:inherit}.greensupia-greeting__content table{width:100%;border-collapse:collapse;margin:1rem 0}.greensupia-greeting__content table td,.greensupia-greeting__content table th{border:1px solid #e5e7eb;padding:.75rem;text-align:left}.greensupia-greeting__content table th{background-color:#f9fafb;font-weight:600}.greensupia-banner{position:relative;width:100%;height:300px;border-radius:.5rem;overflow:hidden;background-color:#f3f4f6;background-repeat:no-repeat;background-size:cover;background-position:50%}@media(min-width:768px){.greensupia-banner{height:500px}}.greensupia-banner__background{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:50%;background-repeat:no-repeat}.greensupia-banner__overlay{position:absolute;inset:0;background-color:rgba(0,0,0,.3)}.greensupia-banner__content{position:absolute;bottom:1.5rem;left:1.5rem;color:#fff;z-index:10}@media(min-width:80rem){.greensupia-banner__content{left:calc((100vw - 80rem)/2 + 1rem)}}.greensupia-banner__content h2{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.5)}@media(max-width:768px){.greensupia-banner__content h2{font-size:1.125rem;margin-bottom:.375rem}}@media(min-width:768px){.greensupia-banner__content h2{font-size:1.875rem}}.greensupia-banner__content p{font-size:1rem;opacity:.9;text-shadow:0 2px 4px rgba(0,0,0,.5)}@media(max-width:768px){.greensupia-banner__content p{font-size:.875rem;line-height:1.4}}@media(min-width:768px){.greensupia-banner__content p{font-size:1.125rem}}.greensupia-banner--small{height:150px}@media(min-width:768px){.greensupia-banner--small{height:200px}}.greensupia-banner .banner-description{font-size:1rem;opacity:.9;text-shadow:0 2px 4px rgba(0,0,0,.5);line-height:1.4}@media(max-width:768px){.greensupia-banner .banner-description{font-size:.875rem;line-height:1.3}}@media(min-width:768px){.greensupia-banner .banner-description{font-size:1.125rem;line-height:1.5}}.greensupia-banner .banner-description h1,.greensupia-banner .banner-description h2,.greensupia-banner .banner-description h3,.greensupia-banner .banner-description h4,.greensupia-banner .banner-description h5,.greensupia-banner .banner-description h6{margin:.1em 0;font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,.5)}.greensupia-banner .banner-description h1:first-child,.greensupia-banner .banner-description h2:first-child,.greensupia-banner .banner-description h3:first-child,.greensupia-banner .banner-description h4:first-child,.greensupia-banner .banner-description h5:first-child,.greensupia-banner .banner-description h6:first-child{margin-top:0}.greensupia-banner .banner-description p{margin:.05em 0;text-shadow:0 2px 4px rgba(0,0,0,.5)}.greensupia-banner .banner-description p:first-child{margin-top:0}.greensupia-banner .banner-description p:last-child{margin-bottom:0}.greensupia-banner .banner-description ol,.greensupia-banner .banner-description ul{margin:.1em 0;padding-left:1.5em}.greensupia-banner .banner-description ol li,.greensupia-banner .banner-description ul li{margin:.05em 0}.greensupia-banner .banner-description b,.greensupia-banner .banner-description strong{font-weight:700}.greensupia-banner .banner-description em,.greensupia-banner .banner-description i{font-style:italic}.greensupia-banner--medium{height:250px}@media(min-width:768px){.greensupia-banner--medium{height:320px}}.greensupia-banner--large{height:300px}@media(min-width:768px){.greensupia-banner--large{height:400px}}.greensupia-news__grid{display:grid;grid-template-columns:1fr;grid-gap:1.5rem;gap:1.5rem}@media(min-width:640px){.greensupia-news__grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.greensupia-news__grid{grid-template-columns:repeat(4,1fr)}}.greensupia-news__item{background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;overflow:hidden;transition:all .3s ease;box-shadow:0 1px 3px rgba(0,0,0,.1)}.greensupia-news__item:hover{box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-2px)}.greensupia-news__image-container{height:12rem;background-color:#f3f4f6;overflow:hidden;position:relative}.greensupia-news__image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.greensupia-news__image:hover{transform:scale(1.05)}.greensupia-news__content{padding:1.5rem}.greensupia-news__title{font-size:1.125rem;font-weight:600;color:#111827;margin-bottom:.5rem;line-height:1.4;-webkit-line-clamp:2}.greensupia-news__description,.greensupia-news__title{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.greensupia-news__description{font-size:.875rem;color:#6b7280;margin-bottom:1rem;line-height:1.5;-webkit-line-clamp:3}.greensupia-news__meta{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.greensupia-news__date{color:#9ca3af}.greensupia-news__link{color:#059669;font-weight:500;text-decoration:none;transition:color .2s ease}.greensupia-news__link:hover{color:#047857}.greensupia-hero{background:linear-gradient(135deg,#f0fdf4,#dbeafe 50%,#faf5ff);padding:5rem 0;border-radius:.5rem;position:relative;overflow:hidden}.greensupia-hero__pattern{position:absolute;inset:0;opacity:.1}.greensupia-hero__pattern:after,.greensupia-hero__pattern:before{content:"";position:absolute;width:18rem;height:18rem;border-radius:50%;filter:blur(1rem);animation:pulse 2s ease-in-out infinite}.greensupia-hero__pattern:before{top:0;left:0;background-color:#86efac;mix-blend-mode:multiply}.greensupia-hero__pattern:after{top:0;right:0;background-color:#93c5fd;mix-blend-mode:multiply;animation-delay:1s}.greensupia-hero__content{position:relative;z-index:10;text-align:center}.greensupia-organization__container{max-width:80rem;margin:0 auto;padding:3rem;background:#fff;border-radius:.5rem;box-shadow:0 1px 3px rgba(0,0,0,.1);border:1px solid #e5e7eb}@media(max-width:80rem){.greensupia-organization__container{padding:3rem}}.greensupia-organization__image{width:100%;height:auto;border-radius:.5rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);transition:transform .3s ease}.greensupia-organization__image:hover{transform:scale(1.02)}.greensupia-organization__placeholder{text-align:center;padding:3rem 0;color:#6b7280}.greensupia-history__timeline{position:relative;max-width:80rem;margin:0 auto;padding:0}.greensupia-history__year-group{position:relative;margin-bottom:2rem}.greensupia-history__year-group:not(:last-child):after{content:"";position:absolute;left:.5rem;top:3rem;bottom:-2rem;width:2px;background:linear-gradient(180deg,#10b981,#e5e7eb)}.greensupia-history__year-title{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:1rem;position:relative;padding-left:2rem}.greensupia-history__year-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:1rem;height:1rem;background:#10b981;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 2px #10b981}.greensupia-history__year-content{padding:0;max-width:80rem}.greensupia-history__item{background:#f9fafb;border-radius:.5rem;padding:1.5rem;margin-bottom:1rem;border-left:4px solid #10b981;transition:all .3s ease;text-align:left;box-shadow:0 2px 4px rgba(0,0,0,.05)}.greensupia-history__item:hover{background:#f3f4f6;transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.1)}.greensupia-history__description{color:#374151;line-height:1.6;margin:0;font-size:1rem}.greensupia-video__container{max-width:90rem;margin:0 auto;text-align:center;padding:0 1rem}.greensupia-video__iframe-wrapper{position:relative;width:100%;padding-bottom:56.25%;margin:0 auto;max-width:85rem}@media(max-width:768px){.greensupia-video__iframe-wrapper{padding-bottom:56.25%;margin:0 .5rem}}@media(min-width:769px)and (max-width:1024px){.greensupia-video__iframe-wrapper{padding-bottom:56.25%;margin:0 1rem}}.greensupia-video__iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none;border-radius:.5rem;box-shadow:0 10px 25px rgba(0,0,0,.1)}.greensupia-video__iframe iframe{width:100%!important;height:100%!important;border:none;border-radius:.5rem}@media(max-width:768px){.greensupia-video__iframe iframe{border-radius:.25rem}}.greensupia-map__container{width:100%;height:320px;position:relative;overflow:hidden;border-radius:.5rem;background-color:#f3f4f6;border:1px solid #e5e7eb}.greensupia-map__element{width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important;z-index:1}.greensupia-map__placeholder{display:flex;align-items:center;justify-content:center;height:100%;background-color:#f3f4f6}.greensupia-map__placeholder .placeholder-content{text-align:center;color:#6b7280}.greensupia-map__placeholder .placeholder-content svg{width:4rem;height:4rem;margin:0 auto 1rem;color:#9ca3af}.greensupia-map__placeholder .placeholder-content .placeholder-title{font-size:1.125rem;font-weight:500;margin-bottom:.5rem}.greensupia-map__placeholder .placeholder-content .placeholder-subtitle{font-size:.875rem;color:#6b7280}.greensupia-contact{margin-bottom:3rem;text-align:center}.greensupia-contact__title{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:2rem;text-align:center}@media(min-width:768px){.greensupia-contact__title{font-size:1.875rem}}.greensupia-contact__container{max-width:80rem;margin:0 auto;padding:0}.greensupia-contact__content{display:flex;flex-direction:column;gap:2rem;align-items:stretch}@media(min-width:1024px){.greensupia-contact__content{flex-direction:row;gap:2rem}}.greensupia-contact__info,.greensupia-contact__map{flex:1 1}.greensupia-contact__card{background-color:#fff;border-radius:.5rem;box-shadow:0 1px 3px rgba(0,0,0,.1);border:1px solid #e5e7eb;padding:1.5rem;height:100%;text-align:left}.greensupia-contact__company,.greensupia-contact__location{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:1rem}.greensupia-contact__details{display:flex;flex-direction:column;gap:.75rem}.greensupia-contact__item{color:#374151}.greensupia-contact__item strong{color:#111827;font-weight:600;display:block;margin-bottom:.25rem}.greensupia-contact__item p{margin:0;line-height:1.5}.greensupia-notice__header{margin-bottom:2rem;position:relative;z-index:2}.greensupia-notice__header-content,.greensupia-notice__title{text-align:center;margin-bottom:2rem}.greensupia-notice__title{font-size:1.25rem;font-weight:700;color:#111827}@media(min-width:768px){.greensupia-notice__title{font-size:1.875rem}}.greensupia-notice__description{font-size:1.125rem;color:#6b7280;max-width:32rem;margin:0 auto}.greensupia-notice__container{max-width:64rem;margin:0 auto;padding:0 1rem;position:relative;z-index:2}.greensupia-notice__list{display:flex;flex-direction:column;gap:1rem}.greensupia-notice__empty{background:#fff;border-radius:.75rem;box-shadow:0 1px 3px rgba(0,0,0,.1);border:1px solid #e5e7eb;padding:3rem;text-align:center}.greensupia-notice__empty-icon{color:#9ca3af;margin-bottom:1rem}.greensupia-notice__empty-title{font-size:1.125rem;font-weight:500;color:#111827;margin-bottom:.5rem}.greensupia-notice__empty-description{color:#6b7280}.greensupia-notice__card{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px rgba(0,0,0,.1);border:1px solid #e5e7eb;overflow:hidden;transition:all .2s ease}.greensupia-notice__card:hover{box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-1px)}.greensupia-notice__card-content{padding:1.5rem}.greensupia-notice__card-header{margin-bottom:1rem}.greensupia-notice__card-title-section{flex:1 1}.greensupia-notice__card-title-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.greensupia-notice__pinned-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.1)}.greensupia-notice__card-title{font-size:1.25rem;font-weight:700;color:#111827;transition:color .2s ease;text-decoration:none}.greensupia-notice__card-title:hover{color:#10b981}.greensupia-notice__meta{display:flex;align-items:center;gap:1.5rem;font-size:.875rem;color:#6b7280;margin-bottom:1rem}.greensupia-notice__meta-item{display:flex;align-items:center;gap:.5rem}.greensupia-notice__attachments{border-top:1px solid #f3f4f6;padding-top:1rem}.greensupia-notice__attachments-list{display:flex;flex-wrap:wrap;gap:.5rem}.greensupia-notice__attachment-link{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:#eff6ff;color:#1d4ed8;border-radius:.5rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s ease}.greensupia-notice__attachment-link:hover{background-color:#dbeafe}.greensupia-notice__pagination{margin-top:2rem}.greensupia-notice__back-button{margin-bottom:1.5rem}.greensupia-notice__back-link{display:inline-flex;align-items:center;color:#6b7280;font-weight:500;text-decoration:none;transition:color .2s ease}.greensupia-notice__back-link:hover{color:#10b981}.greensupia-notice__detail-card{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px rgba(0,0,0,.1);border:1px solid #e5e7eb;overflow:hidden;margin-bottom:2rem}.greensupia-notice__detail-header{padding:2rem;border-bottom:1px solid #f3f4f6}.greensupia-notice__detail-title-section{flex:1 1}.greensupia-notice__detail-title-row{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.greensupia-notice__detail-title{font-size:2rem;font-weight:700;color:#111827;margin-bottom:1rem;line-height:1.3}.greensupia-notice__detail-meta{display:flex;align-items:center;gap:1.5rem;font-size:.875rem;color:#6b7280}.greensupia-notice__detail-content{padding:2rem}.greensupia-notice__content-html{font-size:1rem;line-height:1.7;color:#374151}.greensupia-notice__content-html h1,.greensupia-notice__content-html h2,.greensupia-notice__content-html h3,.greensupia-notice__content-html h4,.greensupia-notice__content-html h5,.greensupia-notice__content-html h6{font-weight:600;margin-top:1.5rem;margin-bottom:1rem;color:#111827}.greensupia-notice__content-html h1{font-size:1.875rem}.greensupia-notice__content-html h2{font-size:1.5rem}.greensupia-notice__content-html h3{font-size:1.25rem}.greensupia-notice__content-html h4{font-size:1.125rem}.greensupia-notice__content-html p{margin-bottom:1rem}.greensupia-notice__content-html ol,.greensupia-notice__content-html ul{margin-bottom:1rem;padding-left:1.5rem}.greensupia-notice__content-html li{margin-bottom:.5rem}.greensupia-notice__content-html a{color:#10b981;text-decoration:underline}.greensupia-notice__content-html a:hover{color:#059669}.greensupia-notice__content-html img{max-width:100%;height:auto;border-radius:.5rem;margin:1rem 0}.greensupia-notice__content-html blockquote{border-left:4px solid #10b981;padding-left:1rem;margin:1rem 0;font-style:italic;color:#6b7280}.greensupia-notice__content-html code{background-color:#f3f4f6;padding:.25rem .5rem;border-radius:.25rem;font-family:Courier New,monospace;font-size:.875rem}.greensupia-notice__content-html pre{background-color:#1f2937;color:#f9fafb;padding:1rem;border-radius:.5rem;overflow-x:auto;margin:1rem 0}.greensupia-notice__content-html pre code{background:none;padding:0;color:inherit}.greensupia-notice__content-html table{width:100%;border-collapse:collapse;margin:1rem 0}.greensupia-notice__content-html table td,.greensupia-notice__content-html table th{border:1px solid #e5e7eb;padding:.75rem;text-align:left}.greensupia-notice__content-html table th{background-color:#f9fafb;font-weight:600}.greensupia-notice__detail-attachments{border-top:1px solid #f3f4f6;padding:2rem}.greensupia-notice__attachments-title{font-size:1.125rem;font-weight:600;color:#111827;margin-bottom:1rem}.greensupia-notice__attachment-item{display:flex;align-items:center;justify-content:space-between;padding:1rem;background-color:#f9fafb;border-radius:.5rem;margin-bottom:.75rem}.greensupia-notice__attachment-info{display:flex;align-items:center;gap:.75rem;flex:1 1}.greensupia-notice__attachment-icon{font-size:1.25rem;color:#6b7280}.greensupia-notice__attachment-details{flex:1 1}.greensupia-notice__attachment-name{font-weight:500;color:#111827;margin-bottom:.25rem}.greensupia-notice__attachment-meta{font-size:.875rem;color:#6b7280}.greensupia-notice__download-button{display:inline-flex;align-items:center;padding:.5rem 1rem;background-color:#10b981;color:#fff;font-size:.875rem;font-weight:500;border-radius:.375rem;text-decoration:none;transition:all .2s ease}.greensupia-notice__download-button:hover{background-color:#059669;transform:translateY(-1px)}.greensupia-notice__bottom-button{display:flex;justify-content:center;margin-top:2rem}.greensupia-notice__back-button-large{display:inline-flex;align-items:center;padding:.75rem 1.5rem;background-color:#6b7280;color:#fff;font-weight:500;border-radius:.5rem;text-decoration:none;transition:all .2s ease}.greensupia-notice__back-button-large:hover{background-color:#4b5563;transform:translateY(-1px)}.inquiry-edit,.inquiry-write{max-width:800px;margin:0 auto;padding:2rem 1rem}.inquiry-edit__header,.inquiry-write__header{text-align:center;margin-bottom:2rem}.inquiry-edit__header h1,.inquiry-write__header h1{font-size:2rem;font-weight:700;color:#333;margin-bottom:.5rem}.inquiry-edit__header p,.inquiry-write__header p{color:#666;font-size:1rem;line-height:1.5}.inquiry-edit__form-section,.inquiry-write__form-section{background:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1);padding:2rem}.inquiry-edit__form,.inquiry-write__form{display:flex;flex-direction:column;gap:2rem}.inquiry-edit__fieldset,.inquiry-write__fieldset{border:1px solid #e0e0e0;border-radius:6px;padding:1.5rem;background:#fafafa}.inquiry-edit__fieldset:focus-within,.inquiry-write__fieldset:focus-within{border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.25)}.inquiry-edit__legend,.inquiry-write__legend{font-weight:600;color:#333;font-size:1.1rem;padding:0 .5rem;background:#fafafa}.inquiry-edit__field,.inquiry-write__field{margin-bottom:1.5rem}.inquiry-edit__field:last-child,.inquiry-write__field:last-child{margin-bottom:0}.inquiry-edit__label,.inquiry-write__label{display:block;font-weight:500;color:#333;margin-bottom:.5rem;font-size:.95rem}.inquiry-edit__required,.inquiry-write__required{color:#dc3545;font-weight:600}.inquiry-edit__input,.inquiry-edit__textarea,.inquiry-write__input,.inquiry-write__textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.inquiry-edit__input:focus,.inquiry-edit__textarea:focus,.inquiry-write__input:focus,.inquiry-write__textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.25)}.inquiry-edit__input::placeholder,.inquiry-edit__textarea::placeholder,.inquiry-write__input::placeholder,.inquiry-write__textarea::placeholder{color:#999}.inquiry-edit__textarea,.inquiry-write__textarea{resize:vertical;min-height:120px;font-family:inherit}.inquiry-edit__checkbox-label,.inquiry-write__checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500;color:#333}.inquiry-edit__checkbox,.inquiry-write__checkbox{width:1.2rem;height:1.2rem;accent-color:#007bff}.inquiry-edit__checkbox-text,.inquiry-write__checkbox-text{font-size:.95rem}.inquiry-edit__help,.inquiry-write__help{display:block;margin-top:.25rem;font-size:.85rem;color:#666;line-height:1.4}.inquiry-edit__actions,.inquiry-write__actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e0e0e0}.inquiry-edit__button,.inquiry-write__button{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;min-width:100px}.inquiry-edit__button:disabled,.inquiry-write__button:disabled{opacity:.6;cursor:not-allowed}.inquiry-edit__button--primary,.inquiry-write__button--primary{background:#007bff;color:#fff}.inquiry-edit__button--primary:hover:not(:disabled),.inquiry-write__button--primary:hover:not(:disabled){background:#0056b3}.inquiry-edit__button--secondary,.inquiry-write__button--secondary{background:#6c757d;color:#fff}.inquiry-edit__button--secondary:hover:not(:disabled),.inquiry-write__button--secondary:hover:not(:disabled){background:#545b62}.inquiry-edit__loading,.inquiry-write__loading{text-align:center;padding:3rem 1rem}.inquiry-edit__loading h1,.inquiry-write__loading h1{font-size:2rem;margin-bottom:1rem}.inquiry-edit__loading p,.inquiry-write__loading p{color:#666;font-size:1.1rem}.inquiry-edit__error,.inquiry-write__error{text-align:center;padding:3rem 1rem}.inquiry-edit__error h1,.inquiry-write__error h1{font-size:2rem;margin-bottom:1rem;color:#dc3545}.inquiry-edit__error p,.inquiry-write__error p{color:#666;font-size:1.1rem;margin-bottom:2rem}@media(max-width:768px){.inquiry-edit,.inquiry-write{padding:1rem}.inquiry-edit__header h1,.inquiry-write__header h1{font-size:1.5rem}.inquiry-edit__header p,.inquiry-write__header p{font-size:.9rem}.inquiry-edit__form-section,.inquiry-write__form-section{padding:1.5rem}.inquiry-edit__fieldset,.inquiry-write__fieldset{padding:1rem}.inquiry-edit__actions,.inquiry-write__actions{flex-direction:column;gap:.5rem}.inquiry-edit__button,.inquiry-write__button{width:100%}}.inquiry-list{max-width:1200px;margin:0 auto;padding:2rem 1rem}.inquiry-list__header{text-align:center;margin-bottom:2rem}.inquiry-list__header h1{font-size:2rem;font-weight:700;color:#333;margin-bottom:.5rem}.inquiry-list__header p{color:#666;font-size:1rem;line-height:1.5}.inquiry-list__controls{justify-content:space-between;align-items:center;margin-bottom:2rem}.inquiry-list__controls,.inquiry-list__filters{display:flex;gap:1rem;flex-wrap:wrap}.inquiry-list__filter{display:flex;flex-direction:column;gap:.5rem}.inquiry-list__filter-label{font-weight:500;color:#333;font-size:.9rem}.inquiry-list__filter-select{padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem;background:#fff;min-width:120px}.inquiry-list__filter-select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.25)}.inquiry-list__write-button{padding:.75rem 1.5rem;background:#007bff;color:#fff;text-decoration:none;border-radius:4px;font-weight:500;transition:background-color .2s}.inquiry-list__write-button:hover{background:#0056b3}.inquiry-list__content{background:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1);overflow:hidden}.inquiry-list__empty,.inquiry-list__error,.inquiry-list__loading{text-align:center;padding:3rem 1rem}.inquiry-list__empty h1,.inquiry-list__error h1,.inquiry-list__loading h1{font-size:2rem;margin-bottom:1rem}.inquiry-list__empty p,.inquiry-list__error p,.inquiry-list__loading p{color:#666;font-size:1.1rem;margin-bottom:2rem}.inquiry-list__write-link{color:#007bff;text-decoration:none;font-weight:500}.inquiry-list__write-link:hover{text-decoration:underline}.inquiry-list__table-container{overflow-x:auto}.inquiry-list__table{width:100%;border-collapse:collapse;font-size:.9rem}.inquiry-list__table td,.inquiry-list__table th{padding:1rem;text-align:left;border-bottom:1px solid #e0e0e0}.inquiry-list__table th{background:#f8f9fa;font-weight:600;color:#333;position:-webkit-sticky;position:sticky;top:0;z-index:10}.inquiry-list__table tbody tr{transition:background-color .2s}.inquiry-list__table tbody tr:hover{background:#f8f9fa}.inquiry-list__cell{vertical-align:middle}.inquiry-list__cell--id{width:80px;text-align:center;font-weight:500}.inquiry-list__cell--title{min-width:300px}.inquiry-list__cell--author{width:120px}.inquiry-list__cell--date{width:100px}.inquiry-list__cell--status{width:100px;text-align:center}.inquiry-list__title-link{color:#333;text-decoration:none;font-weight:500;display:flex;align-items:center;gap:.5rem}.inquiry-list__title-link:hover{color:#007bff;text-decoration:underline}.inquiry-list__secret-badge{font-size:1rem;opacity:.7}.inquiry-list__status-badge{display:inline-block;padding:.25rem .5rem;border-radius:12px;font-size:.8rem;font-weight:500;text-align:center;min-width:60px}.inquiry-list__status-badge--pending{background:#fff3cd;color:#856404}.inquiry-list__status-badge--answered{background:#d1edff;color:#0c5460}.inquiry-list__pagination{padding:1.5rem;border-top:1px solid #e0e0e0}.inquiry-list__pagination-list{display:flex;justify-content:center;align-items:center;gap:.5rem;list-style:none;margin:0;padding:0}.inquiry-list__pagination-button{padding:.5rem .75rem;border:1px solid #ddd;background:#fff;color:#333;text-decoration:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:all .2s;min-width:40px}.inquiry-list__pagination-button:hover:not(:disabled){background:#f8f9fa;border-color:#007bff}.inquiry-list__pagination-button--active{background:#007bff;color:#fff;border-color:#007bff}.inquiry-list__pagination-button--active:hover{background:#0056b3}.inquiry-list__pagination-button:disabled{opacity:.5;cursor:not-allowed}.inquiry-list__pagination-ellipsis{padding:.5rem;color:#666}.inquiry-list__button{padding:.75rem 1.5rem;background:#007bff;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.inquiry-list__button:hover{background:#0056b3}@media(max-width:768px){.inquiry-list{padding:1rem}.inquiry-list__header h1{font-size:1.5rem}.inquiry-list__header p{font-size:.9rem}.inquiry-list__controls{flex-direction:column;align-items:stretch;gap:1rem}.inquiry-list__filters{justify-content:center}.inquiry-list__write-button{text-align:center}.inquiry-list__table{font-size:.8rem}.inquiry-list__table td,.inquiry-list__table th{padding:.75rem .5rem}.inquiry-list__cell--id{width:60px}.inquiry-list__cell--title{min-width:200px}.inquiry-list__cell--author,.inquiry-list__cell--date,.inquiry-list__cell--status{width:80px}.inquiry-list__pagination-list{flex-wrap:wrap;gap:.25rem}.inquiry-list__pagination-button{padding:.4rem .6rem;font-size:.8rem;min-width:35px}}.inquiry-detail{max-width:900px;margin:0 auto;padding:2rem 1rem}.inquiry-detail__header{margin-bottom:2rem}.inquiry-detail__header-content{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.inquiry-detail__header h1{font-size:2rem;font-weight:700;color:#333;margin:0}.inquiry-detail__actions{display:flex;gap:1rem;flex-wrap:wrap}.inquiry-detail__button{padding:.75rem 1.5rem;text-decoration:none;border-radius:4px;font-weight:500;transition:all .2s;border:none;cursor:pointer;font-size:1rem}.inquiry-detail__button--primary{background:#007bff;color:#fff}.inquiry-detail__button--primary:hover{background:#0056b3}.inquiry-detail__button--secondary{background:#6c757d;color:#fff}.inquiry-detail__button--secondary:hover{background:#545b62}.inquiry-detail__content{background:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1);overflow:visible}.inquiry-detail__article-header{padding:2rem;border-bottom:1px solid #e0e0e0;background:#f8f9fa}.inquiry-detail__title{font-size:1.5rem;font-weight:600;color:#333;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.inquiry-detail__secret-badge{font-size:1.2rem;opacity:.7}.inquiry-detail__meta{display:flex;gap:2rem;flex-wrap:wrap}.inquiry-detail__meta-item{display:flex;align-items:center;gap:.5rem}.inquiry-detail__meta-label{font-weight:500;color:#666;font-size:.9rem}.inquiry-detail__meta-value{color:#333;font-size:.9rem}.inquiry-detail__status-badge{display:inline-block;padding:.25rem .5rem;border-radius:12px;font-size:.8rem;font-weight:500;text-align:center;min-width:60px}.inquiry-detail__status-badge--pending{background:#fff3cd;color:#856404}.inquiry-detail__status-badge--answered{background:#d1edff;color:#0c5460}.inquiry-detail__answer,.inquiry-detail__body{padding:2rem}.inquiry-detail__body{border-bottom:1px solid #e0e0e0}.inquiry-detail__section-title{font-size:1.2rem;font-weight:600;color:#333;margin:0 0 1rem}.inquiry-detail__answer-text,.inquiry-detail__content-text{line-height:1.6;color:#333;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;max-width:100%}.inquiry-detail__answer-text p,.inquiry-detail__content-text p{margin:0 0 1rem}.inquiry-detail__answer-text p:last-child,.inquiry-detail__content-text p:last-child{margin-bottom:0}.inquiry-detail__answer-content{background:#f8f9fa;border-radius:6px;padding:1.5rem}.inquiry-detail__answer-meta{margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}.inquiry-detail__answer-date{font-size:.9rem;color:#666;font-style:italic}.inquiry-detail__error,.inquiry-detail__loading{text-align:center;padding:3rem 1rem}.inquiry-detail__error h1,.inquiry-detail__loading h1{font-size:2rem;margin-bottom:1rem}.inquiry-detail__error p,.inquiry-detail__loading p{color:#666;font-size:1.1rem;margin-bottom:2rem}.inquiry-detail__modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.inquiry-detail__modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.3);max-width:400px;width:100%;animation:modalSlideIn .3s ease-out}.inquiry-detail__modal-header{padding:1.5rem 1.5rem 1rem;text-align:center;border-bottom:1px solid #e0e0e0}.inquiry-detail__modal-header h2{font-size:1.3rem;font-weight:600;color:#333;margin:0 0 .5rem}.inquiry-detail__modal-header p{color:#666;font-size:.9rem;line-height:1.4;margin:0}.inquiry-detail__modal-form{padding:1.5rem}.inquiry-detail__modal-field{margin-bottom:1.5rem}.inquiry-detail__modal-label{display:block;font-weight:500;color:#333;margin-bottom:.5rem;font-size:.95rem}.inquiry-detail__modal-input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.inquiry-detail__modal-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.25)}.inquiry-detail__modal-input::placeholder{color:#999}.inquiry-detail__modal-error{color:#dc3545;font-size:.85rem;margin-top:.5rem;margin-bottom:0}.inquiry-detail__modal-actions{display:flex;gap:1rem;justify-content:flex-end}.inquiry-detail__modal-button{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;min-width:80px}.inquiry-detail__modal-button:disabled{opacity:.6;cursor:not-allowed}.inquiry-detail__modal-button--primary{background:#007bff;color:#fff}.inquiry-detail__modal-button--primary:hover:not(:disabled){background:#0056b3}.inquiry-detail__modal-button--secondary{background:#6c757d;color:#fff}.inquiry-detail__modal-button--secondary:hover:not(:disabled){background:#545b62}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.inquiry-detail{padding:1rem}.inquiry-detail__header-content{flex-direction:column;align-items:stretch;gap:1rem}.inquiry-detail__header h1{font-size:1.5rem;text-align:center}.inquiry-detail__actions{justify-content:center}.inquiry-detail__article-header{padding:1.5rem}.inquiry-detail__title{font-size:1.3rem}.inquiry-detail__meta{gap:1rem}.inquiry-detail__answer,.inquiry-detail__body{padding:1.5rem}.inquiry-detail__answer-content{padding:1rem}.inquiry-detail__modal{margin:1rem}.inquiry-detail__modal-actions{flex-direction:column;gap:.5rem}.inquiry-detail__modal-button{width:100%}}.portal-inquiry{padding:2rem;max-width:1200px;margin:0 auto}.portal-inquiry__header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.portal-inquiry__header h1{font-size:2rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.portal-inquiry__header p{color:#6b7280;font-size:1rem}.portal-inquiry__controls{margin-bottom:2rem;padding-bottom:1rem}.portal-inquiry__filters{display:flex;gap:.5rem;flex-wrap:wrap}.portal-inquiry__filters .filter-btn{padding:.5rem 1rem;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:all .2s}.portal-inquiry__filters .filter-btn:hover{background:#f9fafb;border-color:#9ca3af}.portal-inquiry__filters .filter-btn.active{background:#3b82f6;color:#fff;border-color:#3b82f6}.portal-inquiry__content{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.1);overflow:hidden}.portal-inquiry__empty{padding:3rem;text-align:center;color:#6b7280}.portal-inquiry__empty p{font-size:1.125rem}.portal-inquiry__table-container{overflow-x:auto}.portal-inquiry__table{width:100%;border-collapse:collapse}.portal-inquiry__table td,.portal-inquiry__table th{padding:1rem;text-align:left;border-bottom:1px solid #e5e7eb}.portal-inquiry__table th{background:#f9fafb;font-weight:600;color:#374151;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.portal-inquiry__table td{vertical-align:middle}.portal-inquiry__table .inquiry-title{color:#3b82f6;text-decoration:none;font-weight:500}.portal-inquiry__table .inquiry-title:hover{text-decoration:underline}.portal-inquiry__table .type-badge{display:inline-block;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.portal-inquiry__table .type-badge.secret{background:#fef3c7;color:#92400e}.portal-inquiry__table .type-badge.public{background:#dbeafe;color:#1e40af}.portal-inquiry__table .status-badges{display:flex;align-items:center;gap:.5rem}.portal-inquiry__table .status-badge{display:inline-block;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.portal-inquiry__table .status-badge.pending{background:#fef2f2;color:#dc2626}.portal-inquiry__table .status-badge.answered{background:#f0fdf4;color:#166534}.portal-inquiry__table .action-buttons{display:flex;gap:.5rem}.greeting-management .greeting-list .empty-state .portal-inquiry__table .action-buttons .add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .portal-inquiry__table .action-buttons .delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .portal-inquiry__table .action-buttons .edit-button,.greeting-management .modal-confirm .modal-actions .portal-inquiry__table .action-buttons .cancel-btn,.greeting-management .modal-confirm .modal-actions .portal-inquiry__table .action-buttons .submit-btn,.greeting-management .modal-form .form-actions .portal-inquiry__table .action-buttons .cancel-btn,.greeting-management .modal-form .form-actions .portal-inquiry__table .action-buttons .submit-btn,.greeting-management .page-header .portal-inquiry__table .action-buttons .add-button,.portal-inquiry__table .action-buttons .btn,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .empty-state .add-button,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .greeting-item .greeting-actions .delete-button,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .greeting-item .greeting-actions .edit-button,.portal-inquiry__table .action-buttons .greeting-management .modal-confirm .modal-actions .cancel-btn,.portal-inquiry__table .action-buttons .greeting-management .modal-confirm .modal-actions .submit-btn,.portal-inquiry__table .action-buttons .greeting-management .modal-form .form-actions .cancel-btn,.portal-inquiry__table .action-buttons .greeting-management .modal-form .form-actions .submit-btn,.portal-inquiry__table .action-buttons .greeting-management .page-header .add-button{padding:.375rem .75rem;border-radius:.25rem;font-size:.75rem;text-decoration:none;font-weight:500;transition:all .2s}.greeting-management .greeting-list .empty-state .portal-inquiry__table .action-buttons .btn-view.add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .portal-inquiry__table .action-buttons .btn-view.delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .portal-inquiry__table .action-buttons .btn-view.edit-button,.greeting-management .modal-confirm .modal-actions .portal-inquiry__table .action-buttons .btn-view.cancel-btn,.greeting-management .modal-confirm .modal-actions .portal-inquiry__table .action-buttons .btn-view.submit-btn,.greeting-management .modal-form .form-actions .portal-inquiry__table .action-buttons .btn-view.cancel-btn,.greeting-management .modal-form .form-actions .portal-inquiry__table .action-buttons .btn-view.submit-btn,.greeting-management .page-header .portal-inquiry__table .action-buttons .btn-view.add-button,.portal-inquiry__table .action-buttons .btn.btn-view,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .empty-state .btn-view.add-button,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .greeting-item .greeting-actions .btn-view.delete-button,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .greeting-item .greeting-actions .btn-view.edit-button,.portal-inquiry__table .action-buttons .greeting-management .modal-confirm .modal-actions .btn-view.cancel-btn,.portal-inquiry__table .action-buttons .greeting-management .modal-confirm .modal-actions .btn-view.submit-btn,.portal-inquiry__table .action-buttons .greeting-management .modal-form .form-actions .btn-view.cancel-btn,.portal-inquiry__table .action-buttons .greeting-management .modal-form .form-actions .btn-view.submit-btn,.portal-inquiry__table .action-buttons .greeting-management .page-header .btn-view.add-button{background:#3b82f6;color:#fff}.greeting-management .greeting-list .empty-state .portal-inquiry__table .action-buttons .btn-view.add-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .portal-inquiry__table .action-buttons .btn-view.delete-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .portal-inquiry__table .action-buttons .btn-view.edit-button:hover,.greeting-management .modal-confirm .modal-actions .portal-inquiry__table .action-buttons .btn-view.cancel-btn:hover,.greeting-management .modal-confirm .modal-actions .portal-inquiry__table .action-buttons .btn-view.submit-btn:hover,.greeting-management .modal-form .form-actions .portal-inquiry__table .action-buttons .btn-view.cancel-btn:hover,.greeting-management .modal-form .form-actions .portal-inquiry__table .action-buttons .btn-view.submit-btn:hover,.greeting-management .page-header .portal-inquiry__table .action-buttons .btn-view.add-button:hover,.portal-inquiry__table .action-buttons .btn.btn-view:hover,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .empty-state .btn-view.add-button:hover,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .greeting-item .greeting-actions .btn-view.delete-button:hover,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .greeting-item .greeting-actions .btn-view.edit-button:hover,.portal-inquiry__table .action-buttons .greeting-management .modal-confirm .modal-actions .btn-view.cancel-btn:hover,.portal-inquiry__table .action-buttons .greeting-management .modal-confirm .modal-actions .btn-view.submit-btn:hover,.portal-inquiry__table .action-buttons .greeting-management .modal-form .form-actions .btn-view.cancel-btn:hover,.portal-inquiry__table .action-buttons .greeting-management .modal-form .form-actions .btn-view.submit-btn:hover,.portal-inquiry__table .action-buttons .greeting-management .page-header .btn-view.add-button:hover{background:#2563eb}.greeting-management .greeting-list .empty-state .portal-inquiry__table .action-buttons .btn-answer.add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .portal-inquiry__table .action-buttons .btn-answer.delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .portal-inquiry__table .action-buttons .btn-answer.edit-button,.greeting-management .modal-confirm .modal-actions .portal-inquiry__table .action-buttons .btn-answer.cancel-btn,.greeting-management .modal-confirm .modal-actions .portal-inquiry__table .action-buttons .btn-answer.submit-btn,.greeting-management .modal-form .form-actions .portal-inquiry__table .action-buttons .btn-answer.cancel-btn,.greeting-management .modal-form .form-actions .portal-inquiry__table .action-buttons .btn-answer.submit-btn,.greeting-management .page-header .portal-inquiry__table .action-buttons .btn-answer.add-button,.portal-inquiry__table .action-buttons .btn.btn-answer,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .empty-state .btn-answer.add-button,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .greeting-item .greeting-actions .btn-answer.delete-button,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .greeting-item .greeting-actions .btn-answer.edit-button,.portal-inquiry__table .action-buttons .greeting-management .modal-confirm .modal-actions .btn-answer.cancel-btn,.portal-inquiry__table .action-buttons .greeting-management .modal-confirm .modal-actions .btn-answer.submit-btn,.portal-inquiry__table .action-buttons .greeting-management .modal-form .form-actions .btn-answer.cancel-btn,.portal-inquiry__table .action-buttons .greeting-management .modal-form .form-actions .btn-answer.submit-btn,.portal-inquiry__table .action-buttons .greeting-management .page-header .btn-answer.add-button{background:#10b981;color:#fff}.greeting-management .greeting-list .empty-state .portal-inquiry__table .action-buttons .btn-answer.add-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .portal-inquiry__table .action-buttons .btn-answer.delete-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .portal-inquiry__table .action-buttons .btn-answer.edit-button:hover,.greeting-management .modal-confirm .modal-actions .portal-inquiry__table .action-buttons .btn-answer.cancel-btn:hover,.greeting-management .modal-confirm .modal-actions .portal-inquiry__table .action-buttons .btn-answer.submit-btn:hover,.greeting-management .modal-form .form-actions .portal-inquiry__table .action-buttons .btn-answer.cancel-btn:hover,.greeting-management .modal-form .form-actions .portal-inquiry__table .action-buttons .btn-answer.submit-btn:hover,.greeting-management .page-header .portal-inquiry__table .action-buttons .btn-answer.add-button:hover,.portal-inquiry__table .action-buttons .btn.btn-answer:hover,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .empty-state .btn-answer.add-button:hover,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .greeting-item .greeting-actions .btn-answer.delete-button:hover,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .greeting-item .greeting-actions .btn-answer.edit-button:hover,.portal-inquiry__table .action-buttons .greeting-management .modal-confirm .modal-actions .btn-answer.cancel-btn:hover,.portal-inquiry__table .action-buttons .greeting-management .modal-confirm .modal-actions .btn-answer.submit-btn:hover,.portal-inquiry__table .action-buttons .greeting-management .modal-form .form-actions .btn-answer.cancel-btn:hover,.portal-inquiry__table .action-buttons .greeting-management .modal-form .form-actions .btn-answer.submit-btn:hover,.portal-inquiry__table .action-buttons .greeting-management .page-header .btn-answer.add-button:hover{background:#059669}.portal-inquiry__pagination{padding:1rem;display:flex;justify-content:center;background:#f9fafb;border-top:1px solid #e5e7eb}.portal-inquiry__pagination ul{display:flex;gap:.25rem;list-style:none;margin:0;padding:0}.portal-inquiry__pagination .pagination-btn{padding:.5rem .75rem;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:.25rem;cursor:pointer;transition:all .2s}.portal-inquiry__pagination .pagination-btn:hover{background:#f9fafb;border-color:#9ca3af}.portal-inquiry__pagination .pagination-btn.active{background:#3b82f6;color:#fff;border-color:#3b82f6}.portal-inquiry .loading{text-align:center;padding:3rem;font-size:1.125rem}.portal-inquiry__error{text-align:center;padding:1rem;margin:1rem 0;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:.375rem;font-size:.875rem}@media(max-width:768px){.portal-inquiry{padding:1rem}.portal-inquiry__header h1{font-size:1.5rem}.portal-inquiry__filters .filter-btn{padding:.375rem .75rem;font-size:.75rem}.portal-inquiry__table td,.portal-inquiry__table th{padding:.75rem .5rem;font-size:.875rem}.portal-inquiry__table .action-buttons{flex-direction:column;gap:.25rem}.greeting-management .greeting-list .empty-state .portal-inquiry__table .action-buttons .add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .portal-inquiry__table .action-buttons .delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .portal-inquiry__table .action-buttons .edit-button,.greeting-management .modal-confirm .modal-actions .portal-inquiry__table .action-buttons .cancel-btn,.greeting-management .modal-confirm .modal-actions .portal-inquiry__table .action-buttons .submit-btn,.greeting-management .modal-form .form-actions .portal-inquiry__table .action-buttons .cancel-btn,.greeting-management .modal-form .form-actions .portal-inquiry__table .action-buttons .submit-btn,.greeting-management .page-header .portal-inquiry__table .action-buttons .add-button,.portal-inquiry__table .action-buttons .btn,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .empty-state .add-button,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .greeting-item .greeting-actions .delete-button,.portal-inquiry__table .action-buttons .greeting-management .greeting-list .greeting-item .greeting-actions .edit-button,.portal-inquiry__table .action-buttons .greeting-management .modal-confirm .modal-actions .cancel-btn,.portal-inquiry__table .action-buttons .greeting-management .modal-confirm .modal-actions .submit-btn,.portal-inquiry__table .action-buttons .greeting-management .modal-form .form-actions .cancel-btn,.portal-inquiry__table .action-buttons .greeting-management .modal-form .form-actions .submit-btn,.portal-inquiry__table .action-buttons .greeting-management .page-header .add-button{text-align:center}}.portal-inquiry-detail{padding:2rem;max-width:1000px;margin:0 auto}.portal-inquiry-detail__container{max-width:80rem;margin:0 auto;padding:0 1rem}.portal-inquiry-detail__header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.portal-inquiry-detail__header-content{display:flex;justify-content:space-between;align-items:center}.portal-inquiry-detail__title{font-size:2rem;font-weight:700;color:#111827;margin:0}.portal-inquiry-detail__back-button{padding:.5rem 1rem;background:#fbbf24;color:#1f2937;text-decoration:none;border-radius:.375rem;font-size:.875rem;font-weight:500;transition:background .2s}.portal-inquiry-detail__back-button:hover{background:#f59e0b}.portal-inquiry-detail__content{display:flex;flex-direction:column;gap:2rem}.portal-inquiry-detail__inquiry{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.1);border:1px solid #e5e7eb;overflow:visible;margin-bottom:2rem}.portal-inquiry-detail__inquiry-header{padding:1.5rem;border-bottom:1px solid #e5e7eb;margin-bottom:0}.portal-inquiry-detail__inquiry-title{font-size:1.5rem;font-weight:600;color:#111827;margin:0 0 1rem}.portal-inquiry-detail__inquiry-content{border-top:2px solid #e5e7eb;padding:2rem 1.5rem 1.5rem}.portal-inquiry-detail__content-text{line-height:1.6;color:#374151;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;word-break:break-all}.portal-inquiry-detail__meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1rem;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.portal-inquiry-detail__meta-item{display:flex;align-items:center;gap:.5rem}.portal-inquiry-detail__meta-label{font-weight:500;color:#6b7280;font-size:.875rem}.portal-inquiry-detail__meta-value{color:#374151;font-size:.875rem}.portal-inquiry-detail__answer{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.1);border:1px solid #e5e7eb;overflow:hidden}.portal-inquiry-detail__answer-header{padding:1.5rem;border-bottom:1px solid #e5e7eb;background:#f0fdf4}.portal-inquiry-detail__answer-title{font-size:1.125rem;font-weight:600;color:#166534;margin:0 0 .5rem}.portal-inquiry-detail__answer-meta .portal-inquiry-detail__answer-date{font-size:.875rem;color:#059669}.portal-inquiry-detail__answer-content{padding:1.5rem}.portal-inquiry-detail__answer-text{line-height:1.6;color:#374151;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;max-width:100%}.portal-inquiry-detail__answer-form{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.1);border:1px solid #e5e7eb;overflow:hidden}.portal-inquiry-detail__answer-form-title{padding:1.5rem 1.5rem 0;font-size:1.125rem;font-weight:600;color:#111827;margin:0}.portal-inquiry-detail__form{padding:1.5rem}.portal-inquiry-detail__form-group{margin-bottom:1.5rem}.portal-inquiry-detail__form-label{display:block;font-weight:500;color:#111827;margin-bottom:.5rem}.portal-inquiry-detail__form-textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;line-height:1.5;resize:vertical;transition:border-color .2s}.portal-inquiry-detail__form-textarea:focus{outline:none;border-color:#059669;box-shadow:0 0 0 3px rgba(5,150,105,.1)}.portal-inquiry-detail__form-textarea::placeholder{color:#9ca3af}.portal-inquiry-detail__form-actions .portal-inquiry-detail__submit-button{padding:.75rem 1.5rem;background:#059669;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s}.portal-inquiry-detail__form-actions .portal-inquiry-detail__submit-button:hover:not(:disabled){background:#047857}.portal-inquiry-detail__form-actions .portal-inquiry-detail__submit-button:disabled{background:#9ca3af;cursor:not-allowed}.portal-inquiry-detail__type-badge{display:inline-block;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.portal-inquiry-detail__type-badge.secret{background:#fef3c7;color:#92400e}.portal-inquiry-detail__type-badge.public{background:#dbeafe;color:#059669}.portal-inquiry-detail__status-badge{display:inline-block;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.portal-inquiry-detail__status-badge.pending{background:#fef2f2;color:#dc2626}.portal-inquiry-detail__status-badge.answered{background:#f0fdf4;color:#166534}.portal-inquiry-detail__error,.portal-inquiry-detail__loading{text-align:center;padding:3rem;font-size:1.125rem}.portal-inquiry-detail__error{color:#dc2626}@media(max-width:768px){.portal-inquiry-detail{padding:1rem}.portal-inquiry-detail__header-content{flex-direction:column;gap:1rem;align-items:flex-start}.portal-inquiry-detail__header-content h1{font-size:1.5rem}.portal-inquiry-detail__meta{grid-template-columns:1fr;gap:.75rem}.portal-inquiry-detail__meta .meta-item{flex-direction:column;align-items:flex-start;gap:.25rem}.portal-inquiry-detail__answer-content,.portal-inquiry-detail__answer-form form,.portal-inquiry-detail__answer-form-content,.portal-inquiry-detail__answer-form-header,.portal-inquiry-detail__answer-header,.portal-inquiry-detail__inquiry-content,.portal-inquiry-detail__inquiry-header{padding:1rem}}.portal-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.portal-login__container{width:100%;max-width:480px}.portal-login__header{text-align:center;margin-bottom:2.5rem}.portal-login__header .portal-login__title{font-size:2.25rem;font-weight:700;color:#f8c300;margin:0 0 .75rem;text-shadow:0 1px 2px rgba(0,0,0,.1)}.portal-login__header .portal-login__description{font-size:1.125rem;color:#6b7280;margin:0;line-height:1.5}.portal-login__content{background:#fff;border-radius:12px;box-shadow:0 10px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);border:1px solid #e5e7eb;overflow:hidden}.portal-login__card{padding:2.5rem}.portal-login__user-type-selector{margin-bottom:2.5rem}.portal-login__user-type-options{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.portal-login__user-type-option{position:relative;display:flex;flex-direction:column;align-items:center;padding:1.75rem 1rem;border:2px solid #e5e7eb;border-radius:10px;background:#fff;cursor:pointer;transition:all .2s ease;text-align:center;min-height:120px}.portal-login__user-type-option:hover{border-color:#f8c300;transform:translateY(-2px);box-shadow:0 8px 25px -5px rgba(248,195,0,.15)}.portal-login__user-type-option.active{border-color:#f8c300;background:linear-gradient(135deg,#fff5d7,#fef3c7);box-shadow:0 8px 25px -5px rgba(248,195,0,.2)}.portal-login__user-type-option.active:after{content:"✓";position:absolute;top:.75rem;right:.75rem;width:20px;height:20px;background:#f8c300;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.portal-login__user-type-icon{font-size:2.5rem;margin-bottom:1rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.portal-login__user-type-info{flex:1 1;display:flex;flex-direction:column;justify-content:center}.portal-login__user-type-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}.portal-login__user-type-description{font-size:.875rem;color:#6b7280;margin:0;line-height:1.4}.portal-login__form{margin-bottom:2rem}.portal-login__form-group{margin-bottom:1.75rem;position:relative}.portal-login__form-group:last-child{margin-bottom:0}.portal-login__form-label{display:block;font-weight:600;color:#374151;margin-bottom:.625rem;font-size:.875rem;letter-spacing:.025em;transition:color .2s ease}.portal-login__form-input{width:100%;padding:1rem 1.25rem;border:2px solid #e5e7eb;border-radius:10px;font-size:1rem;font-weight:500;transition:all .2s ease;background:#fff;color:#1f2937;position:relative;box-shadow:0 1px 3px rgba(0,0,0,.05)}.portal-login__form-input:focus{outline:none;border-color:#f8c300;box-shadow:0 0 0 4px rgba(248,195,0,.1),0 4px 6px -1px rgba(0,0,0,.1);transform:translateY(-1px)}.portal-login__form-input:hover:not(:focus){border-color:#d1d5db;box-shadow:0 2px 4px rgba(0,0,0,.1)}.portal-login__form-input::placeholder{color:#9ca3af;font-weight:400}.portal-login__form-input[type=password]{letter-spacing:.125em}.portal-login__error{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:1rem 1.25rem;margin-bottom:1rem;position:relative}.portal-login__error:before{content:"⚠️";position:absolute;left:1rem;top:50%;transform:translateY(-50%);font-size:1rem}.portal-login__error p{color:#dc2626;margin:0 0 0 1.5rem;font-size:.875rem;font-weight:500;line-height:1.4}.portal-login__submit-button{width:100%;padding:1.125rem 1.5rem;background:linear-gradient(135deg,#f8c300,#ffd886);color:#1f2937;border:none;border-radius:10px;font-size:1.125rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);position:relative;overflow:hidden;letter-spacing:.025em}.portal-login__submit-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s ease}.portal-login__submit-button:after{content:"→";position:absolute;right:1.5rem;top:50%;transform:translateY(-50%);font-size:1.25rem;transition:transform .2s ease}.portal-login__submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px -5px rgba(248,195,0,.3),0 4px 10px -5px rgba(0,0,0,.1)}.portal-login__submit-button:hover:not(:disabled):before{left:100%}.portal-login__submit-button:hover:not(:disabled):after{transform:translateY(-50%) translateX(4px)}.portal-login__submit-button:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.portal-login__submit-button:disabled{background:#9ca3af;cursor:not-allowed;transform:none;box-shadow:none}.portal-login__submit-button:disabled:after,.portal-login__submit-button:disabled:before{display:none}.portal-login__footer{text-align:center;padding-top:2rem;border-top:1px solid #e5e7eb;margin-top:2rem}.portal-login__footer-text{color:#6b7280;font-size:.875rem;margin:0 0 1rem;line-height:1.5}.portal-login__home-link{display:inline-flex;align-items:center;gap:.5rem;color:#f8c300;text-decoration:none;font-weight:500;font-size:.875rem;transition:all .2s ease;padding:.5rem 1rem;border-radius:6px}.portal-login__home-link:hover{color:#e6b800;background:rgba(248,195,0,.1);text-decoration:none}.portal-login__home-link:before{content:"←";font-size:1rem}@media(max-width:640px){.portal-login{padding:1rem}.portal-login__header{margin-bottom:2rem}.portal-login__header .portal-login__title{font-size:1.875rem}.portal-login__header .portal-login__description{font-size:1rem}.portal-login__card{padding:1.5rem}.portal-login__user-type-options{grid-template-columns:1fr;gap:.75rem}.portal-login__user-type-option{flex-direction:row;text-align:left;padding:1rem;min-height:auto}.portal-login__user-type-option .portal-login__user-type-icon{font-size:2rem;margin-bottom:0;margin-right:1rem}.portal-login__submit-button{padding:.875rem 1.25rem}}@media(prefers-color-scheme:dark){.portal-login:before{background:rgba(17,24,39,.95)}.portal-login__header .portal-login__title{color:#f9fafb}.portal-login__header .portal-login__description{color:#d1d5db}.portal-login__content{background:#1f2937;border-color:#374151}.portal-login__user-type-option{background:#374151;border-color:#4b5563}.portal-login__user-type-option:hover{border-color:#f8c300}.portal-login__user-type-option.active{background:linear-gradient(135deg,#4b5563,#374151)}.portal-login__user-type-title{color:#f9fafb}.portal-login__form-label,.portal-login__user-type-description{color:#d1d5db}.portal-login__form-input{background:#374151;border-color:#4b5563;color:#f9fafb}.portal-login__form-input:focus{border-color:#f8c300}.portal-login__form-input:hover{border-color:#6b7280}.portal-login__form-input::placeholder{color:#9ca3af}.portal-login__footer{border-top-color:#4b5563}.portal-login__footer-text{color:#d1d5db}}.portal h1,[data-page-type=portal] h1{color:#f8c300!important}.portal__title{font-size:1.5rem;font-weight:700;color:#f8c300;margin-bottom:1.5rem}.portal__container{max-width:1200px;margin:0 auto;padding:2rem 1rem}.portal__header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.portal__card{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);border:1px solid #e5e7eb;padding:1.5rem}.portal__button{background:linear-gradient(135deg,#f8c300,#ffd886);color:#1f2937;border:none;border-radius:8px;padding:.75rem 1.5rem;font-weight:600;cursor:pointer;transition:all .2s ease}.portal__button:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(248,195,0,.3)}.portal__button:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.portal__table{width:100%;border-collapse:collapse;margin-top:1rem}.portal__table td,.portal__table th{padding:.75rem;text-align:left;border-bottom:1px solid #e5e7eb}.portal__table th{font-weight:600;color:#374151}.portal__table th,.portal__table tr:hover{background:#f9fafb}.portal__form .portal__form-group{margin-bottom:1rem}.portal__form .portal__form-group label{display:block;font-weight:600;color:#374151;margin-bottom:.5rem}.portal__form .portal__form-group input,.portal__form .portal__form-group select,.portal__form .portal__form-group textarea{width:100%;padding:.75rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:all .2s ease}.portal__form .portal__form-group input:focus,.portal__form .portal__form-group select:focus,.portal__form .portal__form-group textarea:focus{outline:none;border-color:#f8c300;box-shadow:0 0 0 3px rgba(248,195,0,.1)}.portal .description-editor-container{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.portal .description-editor-container .tiptap-editor{border:none;border-radius:0}.portal .description-editor-container .tiptap-editor .tiptap-editor__toolbar{border-bottom:1px solid var(--border);background:var(--background-light)}.portal .description-editor-container .tiptap-editor .tiptap-editor__content{min-height:150px;padding:1rem}.portal .form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border)}.portal .form-actions .cancel-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--background-light);color:var(--foreground);text-decoration:none;font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.portal .form-actions .cancel-btn:hover{background:var(--border);border-color:var(--border-hover)}.portal .form-actions .submit-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border:1px solid rgba(0,0,0,0);border-radius:var(--radius);background:var(--primary);color:#fff;text-decoration:none;font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.portal .form-actions .submit-btn:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.portal .description-editor-section{margin-top:2rem;padding:2rem;background:var(--background-light);border-radius:var(--radius);border:1px solid var(--border)}.portal .description-editor-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.portal .description-editor-section .section-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--foreground)}.portal .description-editor-section .section-header .banner-selection select,.portal .description-editor-section .section-header .banner-selector select{padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--background);color:var(--foreground);font-size:.875rem;min-width:200px}.portal .description-editor-section .section-header .banner-selection select:focus,.portal .description-editor-section .section-header .banner-selector select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.portal .description-editor-section .description-editor-container{margin-bottom:1.5rem;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.portal .description-editor-section .description-editor-container .tiptap-editor-container{border:none;border-radius:0}.portal .description-editor-section .description-editor-container .tiptap-editor-container .editor-toolbar{background:var(--background-light);border-bottom:1px solid var(--border);padding:.75rem}.portal .description-editor-section .description-editor-container .tiptap-editor-container .editor-toolbar .toolbar-button{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.25rem .5rem;margin-right:.25rem;cursor:pointer;transition:all var(--transition-normal)}.portal .description-editor-section .description-editor-container .tiptap-editor-container .editor-toolbar .toolbar-button:hover{background:var(--border);border-color:var(--border-hover)}.portal .description-editor-section .description-editor-container .tiptap-editor-container .editor-toolbar .toolbar-button.is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.portal .description-editor-section .description-editor-container .tiptap-editor-container .editor-toolbar select{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.25rem .5rem;margin-right:.5rem;font-size:.75rem}.portal .description-editor-section .description-editor-container .tiptap-editor-container .editor-container{background:var(--background);min-height:200px}.portal .description-editor-section .description-editor-container .tiptap-editor-container .editor-container .tiptap{padding:1rem}.portal .description-editor-section .description-editor-container .tiptap-editor-container .editor-container .tiptap .editor-paragraph{margin:0;line-height:1.6}.portal .description-editor-section .editor-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem}.portal .description-editor-section .editor-actions .banner-selection{flex:1 1}.greeting-management .greeting-list .empty-state .portal .description-editor-section .editor-actions .add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .portal .description-editor-section .editor-actions .delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .portal .description-editor-section .editor-actions .edit-button,.greeting-management .modal-confirm .modal-actions .portal .description-editor-section .editor-actions .cancel-btn,.greeting-management .modal-confirm .modal-actions .portal .description-editor-section .editor-actions .submit-btn,.greeting-management .modal-form .form-actions .portal .description-editor-section .editor-actions .cancel-btn,.greeting-management .modal-form .form-actions .portal .description-editor-section .editor-actions .submit-btn,.greeting-management .page-header .portal .description-editor-section .editor-actions .add-button,.portal .description-editor-section .editor-actions .btn,.portal .description-editor-section .editor-actions .greeting-management .greeting-list .empty-state .add-button,.portal .description-editor-section .editor-actions .greeting-management .greeting-list .greeting-item .greeting-actions .delete-button,.portal .description-editor-section .editor-actions .greeting-management .greeting-list .greeting-item .greeting-actions .edit-button,.portal .description-editor-section .editor-actions .greeting-management .modal-confirm .modal-actions .cancel-btn,.portal .description-editor-section .editor-actions .greeting-management .modal-confirm .modal-actions .submit-btn,.portal .description-editor-section .editor-actions .greeting-management .modal-form .form-actions .cancel-btn,.portal .description-editor-section .editor-actions .greeting-management .modal-form .form-actions .submit-btn,.portal .description-editor-section .editor-actions .greeting-management .page-header .add-button{padding:.5rem 1.5rem;font-size:.875rem;font-weight:500;white-space:nowrap}.portal-logo{transition:opacity .2s ease}.portal-logo:hover{opacity:.8}.portal-title{font-size:clamp(1rem,2.2vw,1.25rem);cursor:pointer;margin:0;padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:768px){.portal__container{padding:1rem}.portal__title{font-size:1.25rem}.portal__card{padding:1rem}}.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}.admin-portal header{background:var(--background-light,#ffffff);border-bottom:1px solid var(--border,#e5e7eb);box-shadow:var(--shadow-sm,0 1px 2px rgba(0,0,0,.05))}.header-content{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;max-width:1400px;margin:0 auto}.admin-portal header .header-content{margin:0;max-width:none}.header-left{gap:.75rem;min-width:0}.header-left,.header-right{display:flex;align-items:center}.hamburger-menu{display:none;flex-direction:column;justify-content:space-between;width:28px;height:20px;background:rgba(0,0,0,0);border:0;padding:0;cursor:pointer;margin-right:12px;position:relative;z-index:200}.hamburger-menu span{display:block;width:100%;height:2px;background:var(--sidebar-text,#ffffff);border-radius:1px;transition:background var(--transition-fast,.15s ease-in-out)}.hamburger-menu:hover span{background:var(--primary,#f8c300)}.admin-portal .main-container{min-height:calc(100vh - 64px)}.admin-portal aside{border-right:1px solid var(--border,#e5e7eb);background:var(--background-light,#fff)}@media(max-width:1024px){.admin-portal header .hamburger-menu{display:flex}.admin-portal header nav .header-right{gap:0}.admin-portal .main-container{position:relative}.admin-portal aside{position:fixed;top:64px;left:0;height:calc(100vh - 64px);transform:translateX(-100%);transition:transform var(--transition-normal,.3s ease-in-out);box-shadow:var(--shadow-md,0 4px 6px rgba(0,0,0,.1));z-index:150;width:260px}.admin-portal .sidebar-toggle:checked~.main-container aside{transform:translateX(0)}.admin-portal .sidebar-toggle:not(:checked)~header .hamburger-menu span{background:#fff}.admin-portal .sidebar-toggle:checked~header .hamburger-menu span{background:var(--primary,#f8c300)}.admin-portal header .header-content{margin:0}}@media(max-width:768px){.header-content{padding:.75rem 1rem}.header-left{gap:.75rem}.portal-title{font-size:clamp(.95rem,4.2vw,1.05rem)}}@media(max-width:480px){.header-content{padding:.5rem .75rem}.portal-title{font-size:clamp(.9rem,4.5vw,1rem)}}@media(min-width:1025px){.admin-portal header .header-content{max-width:none;margin:0 0 0 var(--portal-sidebar-width,280px);padding-left:1.5rem;padding-right:1.5rem}}.dashboard{max-width:1000px;margin:0 auto;padding:0 1rem;space-y:2rem}.dashboard-loading{display:flex;align-items:center;justify-content:center;height:16rem}.dashboard-loading .loading-text{font-size:1.125rem;font-weight:500}.dashboard-error{text-align:center;color:#dc2626}.dashboard-error p{margin:0}.dashboard-header{margin-bottom:2rem}.dashboard-header .dashboard-title{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:var(--primary)}.dashboard-header .dashboard-subtitle{color:#6b7280;margin-bottom:1rem}.dashboard-header .dashboard-status{display:flex;align-items:center;gap:.75rem}.dashboard-header .dashboard-status .status-badge{padding:.25rem .75rem;font-size:.875rem;border-radius:9999px;font-weight:500}.dashboard-header .dashboard-status .status-badge.status-admin{background-color:#dbeafe;color:#1e40af}.dashboard-header .dashboard-status .status-badge.status-guest{background-color:#f3f4f6;color:#374151}.dashboard-header .dashboard-status .realtime-status{padding:.25rem .75rem;font-size:.875rem;background-color:#ecfdf5;color:#059669;border-radius:9999px;font-weight:500;animation:pulse 2s infinite;display:flex;align-items:center;gap:.5rem}.dashboard-header .dashboard-status .realtime-status .last-update-time{font-size:.75rem;opacity:.8}.dashboard-header .dashboard-status .logout-button{padding:.25rem .75rem;font-size:.875rem;background-color:#fef2f2;color:#dc2626;border-radius:9999px;border:none;cursor:pointer;transition:background-color .2s ease}.dashboard-header .dashboard-status .logout-button:hover{background-color:#fee2e2}.animated-number{transition:all .3s ease}.animated-number.updating{color:var(--primary);transform:scale(1.05)}.visitor-stats-section{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:2rem;gap:2rem;max-width:1200px;margin:0 auto 3rem}@media(max-width:767px){.visitor-stats-section{grid-template-columns:1fr;gap:1.5rem;margin-bottom:2rem}}.visitor-stats-section .card-visitor-stats{background:linear-gradient(135deg,#ffffff,#f8fafc);border:1px solid #e2e8f0;border-radius:1rem;padding:2rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);transition:all .3s ease;position:relative;overflow:hidden}.visitor-stats-section .card-visitor-stats:hover{transform:translateY(-2px);box-shadow:0 10px 25px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.visitor-stats-section .card-visitor-stats .visitor-stat-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.visitor-stats-section .card-visitor-stats .visitor-stat-header .visitor-icon{font-size:2rem;width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border-radius:50%}.visitor-stats-section .card-visitor-stats .visitor-stat-header .visitor-title{font-size:1.25rem;font-weight:600;color:#1f2937}.visitor-stats-section .card-visitor-stats .visitor-main-number{font-size:3rem;font-weight:700;color:#1f2937;margin-bottom:.5rem;line-height:1}.visitor-stats-section .card-visitor-stats .visitor-main-label{font-size:1rem;color:#6b7280;margin-bottom:1.5rem;font-weight:500}.visitor-stats-section .card-visitor-stats .visitor-details{display:flex;flex-direction:column;gap:.75rem}.visitor-stats-section .card-visitor-stats .visitor-details .visitor-period{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f1f5f9}.visitor-stats-section .card-visitor-stats .visitor-details .visitor-period:last-child{border-bottom:none}.visitor-stats-section .card-visitor-stats .visitor-details .visitor-period .period-label{font-size:.875rem;color:#6b7280;font-weight:500}.visitor-stats-section .card-visitor-stats .visitor-details .visitor-period .period-value{font-size:1rem;font-weight:600;color:#1f2937}.visitor-stats-section .card-visitor-stats .bot-tags{margin-top:1rem;padding-top:1rem;border-top:1px solid #f1f5f9}.visitor-stats-section .card-visitor-stats .bot-tags .tag-container{display:flex;flex-wrap:wrap;gap:.5rem}.visitor-stats-section .card-visitor-stats .bot-tags .tag-container .bot-tag{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.visitor-stats-section .card-visitor-stats .bot-tags .tag-container .bot-tag-more{background:#e5e7eb;color:#6b7280;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.stats-section{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.5rem;gap:1.5rem;max-width:1200px;margin:0 auto 2rem}@media(max-width:1023px){.stats-section{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.stats-section{grid-template-columns:1fr}}.stat-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);border:1px solid #e5e7eb;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px -3px rgba(0,0,0,.1)}.stat-card .stat-number{font-size:2.5rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}.stat-card .stat-label{font-size:1rem;font-weight:600;color:#374151;margin-bottom:1rem}.stat-card .stat-details{font-size:.875rem;color:#6b7280;margin-bottom:1rem}.stat-card .progress-container{margin-bottom:1rem}.stat-card .progress-container .progress-bar{width:100%;background-color:#e5e7eb;border-radius:9999px;height:.5rem;margin-bottom:.25rem}.stat-card .progress-container .progress-bar .progress-fill{height:100%;border-radius:9999px;transition:width .5s ease;background:linear-gradient(90deg,#3b82f6,#8b5cf6)}.stat-card .progress-container .progress-bar .progress-fill.progress-success{background:linear-gradient(90deg,#10b981,#059669)}.stat-card .progress-container .progress-text{font-size:.75rem;color:#6b7280}.stat-card .department-tags,.stat-card .inquiry-tags,.stat-card .status-tags{margin-top:1rem}.stat-card .department-tags .tag-container,.stat-card .inquiry-tags .tag-container,.stat-card .status-tags .tag-container{display:flex;flex-wrap:wrap;gap:.25rem}.stat-card .department-tags .tag-container .department-tag,.stat-card .inquiry-tags .tag-container .department-tag,.stat-card .status-tags .tag-container .department-tag{padding:.25rem .5rem;font-size:.75rem;background-color:#dbeafe;color:#1e40af;border-radius:9999px}.stat-card .department-tags .tag-container .department-tag-more,.stat-card .inquiry-tags .tag-container .department-tag-more,.stat-card .status-tags .tag-container .department-tag-more{padding:.25rem .5rem;font-size:.75rem;background-color:#f3f4f6;color:#6b7280;border-radius:9999px}.stat-card .department-tags .tag-container .status-tag,.stat-card .inquiry-tags .tag-container .status-tag,.stat-card .status-tags .tag-container .status-tag{padding:.25rem .5rem;font-size:.75rem;border-radius:9999px}.stat-card .department-tags .tag-container .status-tag.status-active,.stat-card .inquiry-tags .tag-container .status-tag.status-active,.stat-card .status-tags .tag-container .status-tag.status-active{background-color:#dcfce7;color:#166534}.stat-card .department-tags .tag-container .status-tag.status-inactive,.stat-card .inquiry-tags .tag-container .status-tag.status-inactive,.stat-card .status-tags .tag-container .status-tag.status-inactive{background-color:#fef2f2;color:#dc2626}.stat-card .department-tags .tag-container .status-tag.status-pinned,.stat-card .inquiry-tags .tag-container .status-tag.status-pinned,.stat-card .status-tags .tag-container .status-tag.status-pinned{background-color:#fef3c7;color:#92400e}.stat-card .department-tags .tag-container .status-tag.status-secret,.stat-card .inquiry-tags .tag-container .status-tag.status-secret,.stat-card .status-tags .tag-container .status-tag.status-secret{background-color:#f3e8ff;color:#7c3aed}.stat-card .department-tags .tag-container .status-tag.status-public,.stat-card .inquiry-tags .tag-container .status-tag.status-public,.stat-card .status-tags .tag-container .status-tag.status-public{background-color:#f3f4f6;color:#374151}.stat-card .history-info{margin-top:1rem}.stat-card .history-info .history-text{font-size:.75rem;color:#6b7280}.action-section{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);border:1px solid #e5e7eb;padding:1.5rem;margin-bottom:2rem}.action-section .section-title{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:#374151}.action-section .action-buttons{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem}@media(min-width:768px){.action-section .action-buttons{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.action-section .action-buttons{grid-template-columns:repeat(4,1fr);max-width:1000px;margin:0 auto}}.action-section .action-button{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;font-weight:600;font-size:.875rem;transition:all .2s ease;cursor:pointer;border:1px solid rgba(0,0,0,0);text-decoration:none;text-align:center}.action-section .action-button span{font-size:1rem}.action-section .action-button.action-primary{background:var(--primary);color:#fff;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.action-section .action-button.action-primary:hover:not(.action-disabled){background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 10px 25px -3px rgba(0,0,0,.1)}.action-section .action-button.action-secondary{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.action-section .action-button.action-secondary:hover:not(.action-disabled){transform:translateY(-2px);box-shadow:0 10px 25px -3px rgba(0,0,0,.1)}.action-section .action-button.action-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.action-section .action-button.action-success:hover:not(.action-disabled){transform:translateY(-2px);box-shadow:0 10px 25px -3px rgba(0,0,0,.1)}.action-section .action-button.action-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.action-section .action-button.action-warning:hover:not(.action-disabled){transform:translateY(-2px);box-shadow:0 10px 25px -3px rgba(0,0,0,.1)}.action-section .action-button.action-info{background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.action-section .action-button.action-info:hover:not(.action-disabled){transform:translateY(-2px);box-shadow:0 10px 25px -3px rgba(0,0,0,.1)}.action-section .action-button.action-purple{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.action-section .action-button.action-purple:hover:not(.action-disabled){transform:translateY(-2px);box-shadow:0 10px 25px -3px rgba(0,0,0,.1)}.action-section .action-button.action-dark{background:linear-gradient(135deg,#374151,#1f2937);color:#fff;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.action-section .action-button.action-dark:hover:not(.action-disabled){transform:translateY(-2px);box-shadow:0 10px 25px -3px rgba(55,65,81,.4)}.action-section .action-button.action-disabled{opacity:.5;cursor:pointer}.action-section .action-button.action-disabled:hover{opacity:.7}.action-section .guest-notice{margin-top:1rem;padding:.75rem;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:8px}.action-section .guest-notice .guest-notice-text{font-size:.875rem;color:#1e40af;margin:0}.activity-section{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);border:1px solid #e5e7eb;padding:1.5rem;margin-bottom:2rem}.activity-section .section-title{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:#374151}.activity-section .activity-list{display:flex;flex-direction:column;gap:.75rem}.activity-section .activity-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background-color:#f9fafb;border-radius:8px}.activity-section .activity-item .activity-indicator{width:.5rem;height:.5rem;border-radius:50%}.activity-section .activity-item .activity-indicator.activity-success{background-color:#10b981}.activity-section .activity-item .activity-indicator.activity-info{background-color:#3b82f6}.activity-section .activity-item .activity-indicator.activity-purple{background-color:#8b5cf6}.activity-section .activity-item .activity-indicator.activity-emerald{background-color:#10b981}.activity-section .activity-item .activity-indicator.activity-orange{background-color:#f59e0b}.activity-section .activity-item .activity-text{font-size:.875rem;color:#374151;flex:1 1}.activity-section .activity-item .activity-time{font-size:.75rem;color:#6b7280;margin-left:auto}.system-section{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);border:1px solid #e5e7eb;padding:1.5rem;margin-bottom:2rem}.system-section .section-title{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:#374151}.system-section .system-status{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem}@media(min-width:768px){.system-section .system-status{grid-template-columns:repeat(3,1fr)}}.system-section .status-item{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:8px}.system-section .status-item.status-healthy{background-color:#f0fdf4}.system-section .status-item.status-info{background-color:#eff6ff}.system-section .status-item.status-purple{background-color:#faf5ff}.system-section .status-item .status-indicator{width:.75rem;height:.75rem;border-radius:50%;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.system-section .status-item .status-indicator.status-healthy-indicator{background-color:#10b981}.system-section .status-item .status-indicator.status-info-indicator{background-color:#3b82f6}.system-section .status-item .status-indicator.status-purple-indicator{background-color:#8b5cf6}.system-section .status-item .status-content .status-title{font-weight:500;color:#374151;margin-bottom:.25rem}.system-section .status-item .status-content .status-subtitle{font-size:.875rem;color:#6b7280}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media(max-width:768px){.dashboard{padding:0 .5rem}.dashboard-header .dashboard-title{font-size:1.5rem}.stats-section{gap:1rem}.stat-card{padding:1rem}.stat-card .stat-number{font-size:2rem}.action-section,.activity-section,.system-section{padding:1rem}.action-buttons,.system-status{grid-template-columns:1fr}}.admin-add-page{min-height:100vh;padding:2rem 1rem;display:flex;align-items:center;justify-content:center}.admin-add-container{background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1);padding:2.5rem;width:100%;max-width:500px;animation:slideUp .5s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.admin-add-header{text-align:center;margin-bottom:2rem}.admin-add-header h1{color:#1f2937;font-size:2rem;font-weight:700;margin-bottom:.5rem}.admin-add-header p{color:#6b7280;font-size:1rem}.admin-add-form .form-group{margin-bottom:1.5rem}.admin-add-form .form-group label{display:block;color:#374151;font-weight:600;margin-bottom:.5rem;font-size:.875rem}.admin-add-form .form-group .form-input{width:100%;padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:all .2s ease;background:#f9fafb}.admin-add-form .form-group .form-input:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px rgba(102,126,234,.1)}.admin-add-form .form-group .form-input::placeholder{color:#9ca3af}.admin-add-form .message{padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-weight:500}.admin-add-form .message.success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.admin-add-form .message.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.admin-add-form .form-actions{display:flex;gap:1rem;margin-bottom:2rem}.admin-add-form .form-actions .btn,.admin-add-form .form-actions .greeting-management .greeting-list .empty-state .add-button,.admin-add-form .form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .delete-button,.admin-add-form .form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .edit-button,.admin-add-form .form-actions .greeting-management .modal-confirm .modal-actions .cancel-btn,.admin-add-form .form-actions .greeting-management .modal-confirm .modal-actions .submit-btn,.admin-add-form .form-actions .greeting-management .page-header .add-button,.admin-add-form .greeting-management .modal-form .form-actions .cancel-btn,.admin-add-form .greeting-management .modal-form .form-actions .submit-btn,.greeting-management .greeting-list .empty-state .admin-add-form .form-actions .add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-add-form .form-actions .delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-add-form .form-actions .edit-button,.greeting-management .modal-confirm .modal-actions .admin-add-form .form-actions .cancel-btn,.greeting-management .modal-confirm .modal-actions .admin-add-form .form-actions .submit-btn,.greeting-management .modal-form .admin-add-form .form-actions .cancel-btn,.greeting-management .modal-form .admin-add-form .form-actions .submit-btn,.greeting-management .page-header .admin-add-form .form-actions .add-button{flex:1 1;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;text-align:center;display:inline-flex;align-items:center;justify-content:center}.admin-add-form .form-actions .btn:disabled,.admin-add-form .form-actions .greeting-management .greeting-list .empty-state .add-button:disabled,.admin-add-form .form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .delete-button:disabled,.admin-add-form .form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .edit-button:disabled,.admin-add-form .form-actions .greeting-management .modal-confirm .modal-actions .cancel-btn:disabled,.admin-add-form .form-actions .greeting-management .modal-confirm .modal-actions .submit-btn:disabled,.admin-add-form .form-actions .greeting-management .page-header .add-button:disabled,.admin-add-form .greeting-management .modal-form .form-actions .cancel-btn:disabled,.admin-add-form .greeting-management .modal-form .form-actions .submit-btn:disabled,.greeting-management .greeting-list .empty-state .admin-add-form .form-actions .add-button:disabled,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-add-form .form-actions .delete-button:disabled,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-add-form .form-actions .edit-button:disabled,.greeting-management .modal-confirm .modal-actions .admin-add-form .form-actions .cancel-btn:disabled,.greeting-management .modal-confirm .modal-actions .admin-add-form .form-actions .submit-btn:disabled,.greeting-management .modal-form .admin-add-form .form-actions .cancel-btn:disabled,.greeting-management .modal-form .admin-add-form .form-actions .submit-btn:disabled,.greeting-management .page-header .admin-add-form .form-actions .add-button:disabled{opacity:.6;cursor:not-allowed}.admin-add-form .form-actions .btn.btn-primary,.admin-add-form .form-actions .greeting-management .greeting-list .empty-state .add-button,.admin-add-form .form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .btn-primary.delete-button,.admin-add-form .form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .btn-primary.edit-button,.admin-add-form .form-actions .greeting-management .modal-confirm .modal-actions .btn-primary.cancel-btn,.admin-add-form .form-actions .greeting-management .modal-confirm .modal-actions .submit-btn,.admin-add-form .form-actions .greeting-management .page-header .add-button,.admin-add-form .greeting-management .modal-form .form-actions .btn-primary.cancel-btn,.admin-add-form .greeting-management .modal-form .form-actions .page-header .cancel-btn.add-button,.admin-add-form .greeting-management .modal-form .form-actions .submit-btn,.admin-add-form .greeting-management .page-header .modal-form .form-actions .cancel-btn.add-button,.greeting-management .greeting-list .empty-state .admin-add-form .form-actions .add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-add-form .form-actions .btn-primary.delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-add-form .form-actions .btn-primary.edit-button,.greeting-management .modal-confirm .modal-actions .admin-add-form .form-actions .btn-primary.cancel-btn,.greeting-management .modal-confirm .modal-actions .admin-add-form .form-actions .submit-btn,.greeting-management .modal-form .admin-add-form .form-actions .btn-primary.cancel-btn,.greeting-management .modal-form .admin-add-form .form-actions .page-header .cancel-btn.add-button,.greeting-management .modal-form .admin-add-form .form-actions .submit-btn,.greeting-management .page-header .admin-add-form .form-actions .add-button{color:#fff}.admin-add-form .form-actions .btn.btn-primary:hover:not(:disabled),.admin-add-form .form-actions .greeting-management .greeting-list .empty-state .add-button:hover:not(:disabled),.admin-add-form .form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .btn-primary.delete-button:hover:not(:disabled),.admin-add-form .form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .btn-primary.edit-button:hover:not(:disabled),.admin-add-form .form-actions .greeting-management .modal-confirm .modal-actions .btn-primary.cancel-btn:hover:not(:disabled),.admin-add-form .form-actions .greeting-management .modal-confirm .modal-actions .submit-btn:hover:not(:disabled),.admin-add-form .form-actions .greeting-management .page-header .add-button:hover:not(:disabled),.admin-add-form .greeting-management .modal-form .form-actions .btn-primary.cancel-btn:hover:not(:disabled),.admin-add-form .greeting-management .modal-form .form-actions .submit-btn:hover:not(:disabled),.greeting-management .greeting-list .empty-state .admin-add-form .form-actions .add-button:hover:not(:disabled),.greeting-management .greeting-list .greeting-item .greeting-actions .admin-add-form .form-actions .btn-primary.delete-button:hover:not(:disabled),.greeting-management .greeting-list .greeting-item .greeting-actions .admin-add-form .form-actions .btn-primary.edit-button:hover:not(:disabled),.greeting-management .modal-confirm .modal-actions .admin-add-form .form-actions .btn-primary.cancel-btn:hover:not(:disabled),.greeting-management .modal-confirm .modal-actions .admin-add-form .form-actions .submit-btn:hover:not(:disabled),.greeting-management .modal-form .admin-add-form .form-actions .btn-primary.cancel-btn:hover:not(:disabled),.greeting-management .modal-form .admin-add-form .form-actions .submit-btn:hover:not(:disabled),.greeting-management .page-header .admin-add-form .form-actions .add-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 25px -3px rgba(102,126,234,.4)}.admin-add-form .form-actions .btn.btn-secondary,.admin-add-form .form-actions .greeting-management .greeting-list .empty-state .btn-secondary.add-button,.admin-add-form .form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .btn-secondary.delete-button,.admin-add-form .form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .btn-secondary.edit-button,.admin-add-form .form-actions .greeting-management .modal-confirm .modal-actions .btn-secondary.cancel-btn,.admin-add-form .form-actions .greeting-management .modal-confirm .modal-actions .btn-secondary.submit-btn,.admin-add-form .form-actions .greeting-management .page-header .btn-secondary.add-button,.admin-add-form .greeting-management .modal-form .form-actions .btn-secondary.cancel-btn,.admin-add-form .greeting-management .modal-form .form-actions .btn-secondary.submit-btn,.greeting-management .greeting-list .empty-state .admin-add-form .form-actions .btn-secondary.add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-add-form .form-actions .btn-secondary.delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-add-form .form-actions .btn-secondary.edit-button,.greeting-management .modal-confirm .modal-actions .admin-add-form .form-actions .btn-secondary.cancel-btn,.greeting-management .modal-confirm .modal-actions .admin-add-form .form-actions .btn-secondary.submit-btn,.greeting-management .modal-form .admin-add-form .form-actions .btn-secondary.cancel-btn,.greeting-management .modal-form .admin-add-form .form-actions .btn-secondary.submit-btn,.greeting-management .page-header .admin-add-form .form-actions .btn-secondary.add-button{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.admin-add-form .form-actions .btn.btn-secondary:hover,.admin-add-form .form-actions .greeting-management .greeting-list .empty-state .btn-secondary.add-button:hover,.admin-add-form .form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .btn-secondary.delete-button:hover,.admin-add-form .form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .btn-secondary.edit-button:hover,.admin-add-form .form-actions .greeting-management .modal-confirm .modal-actions .btn-secondary.cancel-btn:hover,.admin-add-form .form-actions .greeting-management .modal-confirm .modal-actions .btn-secondary.submit-btn:hover,.admin-add-form .form-actions .greeting-management .page-header .btn-secondary.add-button:hover,.admin-add-form .greeting-management .modal-form .form-actions .btn-secondary.cancel-btn:hover,.admin-add-form .greeting-management .modal-form .form-actions .btn-secondary.submit-btn:hover,.greeting-management .greeting-list .empty-state .admin-add-form .form-actions .btn-secondary.add-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-add-form .form-actions .btn-secondary.delete-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-add-form .form-actions .btn-secondary.edit-button:hover,.greeting-management .modal-confirm .modal-actions .admin-add-form .form-actions .btn-secondary.cancel-btn:hover,.greeting-management .modal-confirm .modal-actions .admin-add-form .form-actions .btn-secondary.submit-btn:hover,.greeting-management .modal-form .admin-add-form .form-actions .btn-secondary.cancel-btn:hover,.greeting-management .modal-form .admin-add-form .form-actions .btn-secondary.submit-btn:hover,.greeting-management .page-header .admin-add-form .form-actions .btn-secondary.add-button:hover{background:#e5e7eb;border-color:#9ca3af}.admin-add-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem}.admin-add-info h3{color:#1f2937;font-size:1.125rem;font-weight:600;margin-bottom:1rem}.admin-add-info ul{list-style:none;padding:0;margin:0}.admin-add-info ul li{color:#4b5563;position:relative;padding:.5rem 0 .5rem 1.5rem}.admin-add-info ul li:before{content:"•";color:#667eea;font-weight:700;position:absolute;left:0}.admin-add-info ul li:not(:last-child){border-bottom:1px solid #e5e7eb}@media(max-width:640px){.admin-add-container{padding:2rem 1.5rem;margin:1rem}.admin-add-header h1{font-size:1.75rem}.form-actions{flex-direction:column}.form-actions .btn,.form-actions .greeting-management .greeting-list .empty-state .add-button,.form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .delete-button,.form-actions .greeting-management .greeting-list .greeting-item .greeting-actions .edit-button,.form-actions .greeting-management .modal-confirm .modal-actions .cancel-btn,.form-actions .greeting-management .modal-confirm .modal-actions .submit-btn,.form-actions .greeting-management .page-header .add-button,.greeting-management .greeting-list .empty-state .form-actions .add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .form-actions .delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .form-actions .edit-button,.greeting-management .modal-confirm .modal-actions .form-actions .cancel-btn,.greeting-management .modal-confirm .modal-actions .form-actions .submit-btn,.greeting-management .modal-form .form-actions .cancel-btn,.greeting-management .modal-form .form-actions .submit-btn,.greeting-management .page-header .form-actions .add-button{width:100%}}.auto-logout-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center}.auto-logout-modal__overlay{position:absolute;inset:0;background-color:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auto-logout-modal__content{position:relative;background-color:var(--background-light);border-radius:var(--radius-lg);padding:var(--spacing-xl);max-width:28rem;width:calc(100% - 2rem);margin:0 1rem;box-shadow:var(--shadow-xl);text-align:center}.auto-logout-modal__header{margin-bottom:var(--spacing-lg)}.auto-logout-modal__header .auto-logout-modal__title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-md);line-height:1.4}.auto-logout-modal__header .auto-logout-modal__description{color:var(--text-muted);line-height:1.5;margin:0}.auto-logout-modal__progress{margin-bottom:var(--spacing-lg)}.auto-logout-modal__progress .auto-logout-modal__progress-bar{width:100%;height:.5rem;background-color:var(--border);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--spacing-sm)}.auto-logout-modal__progress .auto-logout-modal__progress-fill{height:100%;background:linear-gradient(90deg,var(--error) 0,var(--warning) 100%);border-radius:var(--radius-full);transition:width 1s ease-in-out}.auto-logout-modal__progress .auto-logout-modal__countdown{font-size:.875rem;color:var(--text-muted);margin:0}.auto-logout-modal__actions{display:flex;gap:var(--spacing-md)}.auto-logout-modal__actions .auto-logout-modal__btn{flex:1 1;padding:var(--spacing-md) var(--spacing-lg);border:none;border-radius:var(--radius);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);line-height:1.4}.auto-logout-modal__actions .auto-logout-modal__btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.auto-logout-modal__actions .auto-logout-modal__btn:active{transform:translateY(0)}.auto-logout-modal__actions .auto-logout-modal__btn--primary{background:var(--gradient-primary);color:var(--text-primary);font-weight:600}.auto-logout-modal__actions .auto-logout-modal__btn--primary:hover{background:var(--gradient-secondary)}.auto-logout-modal__actions .auto-logout-modal__btn--secondary{background-color:var(--muted);color:var(--background-light)}.auto-logout-modal__actions .auto-logout-modal__btn--secondary:hover{background-color:var(--text-muted)}@media(max-width:640px){.auto-logout-modal__content{padding:var(--spacing-lg);margin:0 .5rem}.auto-logout-modal__actions{flex-direction:column;gap:var(--spacing-sm)}.auto-logout-modal__actions .auto-logout-modal__btn{width:100%}}@media(prefers-color-scheme:dark){.auto-logout-modal__content{background-color:var(--background);border:1px solid var(--border)}.auto-logout-modal__title{color:var(--foreground)}.auto-logout-modal__countdown,.auto-logout-modal__description{color:var(--muted-foreground)}}.greensupia-banner-slider{width:100%;position:relative}.greensupia-banner-slider .banner-slider-container{position:relative;width:100%;height:500px;overflow:hidden;border-radius:8px}.greensupia-banner-slider .banner-slider-container .banner-slides{position:relative;width:100%;height:100%}.greensupia-banner-slider .banner-slider-container .banner-slides .banner-slide{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:50%;background-repeat:no-repeat;opacity:0;transition:opacity .5s ease-in-out}.greensupia-banner-slider .banner-slider-container .banner-slides .banner-slide.active{opacity:1}.greensupia-banner-slider .banner-slider-container .banner-slides .banner-slide__overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.3)}.greensupia-banner-slider .banner-slider-container .banner-slides .banner-slide__content{position:absolute;bottom:2rem;left:2rem;color:#fff;z-index:10;max-width:600px}.greensupia-banner-slider .banner-slider-container .banner-slides .banner-slide__content h2{font-size:2.5rem;font-weight:700;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.greensupia-banner-slider .banner-slider-container .banner-slides .banner-slide__content .banner-description{font-size:1.2rem;line-height:1.6;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.greensupia-banner-slider .banner-slider-container .banner-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:hsla(0,0%,100%,.2);border:none;color:#fff;font-size:2rem;width:50px;height:50px;border-radius:50%;cursor:pointer;transition:all .3s ease;z-index:20}.greensupia-banner-slider .banner-slider-container .banner-nav-btn:hover{background:hsla(0,0%,100%,.3);transform:translateY(-50%) scale(1.1)}.greensupia-banner-slider .banner-slider-container .banner-nav-btn.banner-nav-prev{left:1rem}.greensupia-banner-slider .banner-slider-container .banner-nav-btn.banner-nav-next{right:1rem}.greensupia-banner-slider .banner-slider-container .banner-indicators{position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);display:flex;gap:.5rem;z-index:20}.greensupia-banner-slider .banner-slider-container .banner-indicators .banner-indicator{width:12px;height:12px;border-radius:50%;border:2px solid #fff;background:rgba(0,0,0,0);cursor:pointer;transition:all .3s ease}.greensupia-banner-slider .banner-slider-container .banner-indicators .banner-indicator:hover{background:hsla(0,0%,100%,.5)}.greensupia-banner-slider .banner-slider-container .banner-indicators .banner-indicator.active{background:#fff}.greensupia-banner-slider .banner-slider-container .banner-progress{position:absolute;top:0;left:0;width:100%;height:4px;background:hsla(0,0%,100%,.3);z-index:20}.greensupia-banner-slider .banner-slider-container .banner-progress .banner-progress-bar{height:100%;background:#fff;transition:width .3s ease}@media(max-width:768px){.greensupia-banner-slider .banner-slider-container{height:350px}.greensupia-banner-slider .banner-slider-container .banner-slides .banner-slide__content{bottom:1rem;left:1rem}.greensupia-banner-slider .banner-slider-container .banner-slides .banner-slide__content h2{font-size:1.8rem}.greensupia-banner-slider .banner-slider-container .banner-slides .banner-slide__content .banner-description{font-size:1rem}.greensupia-banner-slider .banner-slider-container .banner-nav-btn{width:40px;height:40px;font-size:1.5rem}}.editor-toolbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;background:#f9fafb;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 8px rgba(0,0,0,.03);padding:10px 16px;border-radius:8px 8px 0 0}.editor-toolbar button,.editor-toolbar select{border:none;background:none;margin:0 2px;padding:6px 8px;border-radius:6px;font-size:16px;color:#333;transition:background .2s,color .2s,box-shadow .2s;cursor:pointer;min-width:32px;min-height:32px;display:flex;align-items:center;justify-content:center}.editor-toolbar button.is-active,.editor-toolbar button:active,.editor-toolbar select.is-active,.editor-toolbar select:active{background:#e3f0ff;color:#1976d2;box-shadow:0 2px 8px rgba(25,118,210,.08)}.editor-toolbar button:hover,.editor-toolbar select:hover{background:#f0f4f8;color:#1976d2}.editor-toolbar button:disabled,.editor-toolbar select:disabled{opacity:.5;cursor:not-allowed}.editor-toolbar select{background:#f7f7f7;border:1px solid #d0d0d0;font-size:15px;border-radius:6px;padding:4px 8px;min-width:80px;cursor:pointer}.color-picker-container{position:relative;display:inline-block;pointer-events:auto}.color-picker-popover{border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.12);padding:8px;background:#fff;border:1px solid #e0e0e0;position:absolute;z-index:9999;top:36px;left:0;pointer-events:auto}.color-picker-popover button{margin-top:10px;padding:5px 10px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;width:100%}.color-picker-popover button:hover{background:#0056b3}.editor-container,.tiptap{position:relative;outline:none;min-height:320px}.tiptap{padding:20px;background:#fff;cursor:text;z-index:1}.tiptap-loading{height:400px;display:flex;align-items:center;justify-content:center;background:var(--background-light,#fff);border:1px solid var(--border-color,#ddd);border-radius:var(--border-radius,4px);color:var(--muted-foreground,#999)}:global(.ProseMirror){outline:none;cursor:text;position:relative;word-wrap:break-word;white-space:pre-wrap;-webkit-font-variant-ligatures:none;font-feature-settings:none;font-variant-ligatures:none;padding:4px 8px 4px 14px;line-height:1.5;overflow-wrap:break-word;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;min-width:1px}:global(.ProseMirror) p{margin:.1em 0;cursor:text;min-width:1px}:global(.ProseMirror) h1,:global(.ProseMirror) h2,:global(.ProseMirror) h3{margin:.1em 0 .05em;cursor:text;min-width:1px}:global(.ProseMirror) ol,:global(.ProseMirror) ul{margin:1em 0;padding-left:2em;cursor:text;min-width:1px}:global(.ProseMirror) li{margin:.5em 0;cursor:text;min-width:1px}:global(.ProseMirror) table{border-collapse:collapse;margin:1em 0;width:100%;cursor:text;min-width:1px}:global(.ProseMirror) table td,:global(.ProseMirror) table th{border:1px solid #ddd;padding:8px;cursor:text;min-width:1px}:global(.ProseMirror) table th{background:#f5f5f5;font-weight:700;cursor:text;min-width:1px}:global(.ProseMirror) img{max-width:100%;height:auto;display:block;margin:1em 0;cursor:text}:global(.ProseMirror) mark{background:#ffeb3b;padding:.1em .2em;border-radius:2px;cursor:text}:global(.ProseMirror) .tiptap-highlight{background:#ffeb3b;padding:.1em .2em;border-radius:2px;cursor:text}:global(.ProseMirror) a{color:#007bff;text-decoration:underline;cursor:pointer}:global(.ProseMirror) a:hover{color:#0056b3;cursor:pointer}:global(.ProseMirror) blockquote{border-left:4px solid #ddd;margin:1em 0;padding-left:1em;font-style:italic}:global(.ProseMirror) code{background:#f5f5f5;padding:.2em .4em;border-radius:3px;font-family:monospace}:global(.ProseMirror) pre{background:#f5f5f5;padding:1em;border-radius:4px;overflow-x:auto}:global(.ProseMirror) pre code{background:none;padding:0}.editor-paragraph{margin:0!important;line-height:1.2!important}.editor-paragraph:first-child{margin-top:0!important}.editor-paragraph:last-child{margin-bottom:0!important}.tiptap p{margin:0!important;line-height:1.2!important}:global(.ProseMirror) p{margin:0!important;line-height:1.2!important}.line-break{display:inline-block;height:.8em;vertical-align:baseline}.banner-description .editor-paragraph{margin:0!important}.banner-description .line-break{height:.2em!important}.banner-description p{margin:0!important;line-height:1.1!important}:root{--background:#f7f7f7;--foreground:#2e2e2e;--muted:#aaaaaa;--muted-foreground:#aaaaaa;--background-light:#ffffff;--text-primary:#2e2e2e;--text-muted:#6b7280;--primary:#f8c300;--primary-hover:#ffd886;--primary-light:#fff5d7;--primary-dark:#e6b800;--sidebar-bg:#2c3e50;--sidebar-text:#f7f7f7;--success:#48bb78;--success-light:#f0fff4;--warning:#ed8936;--warning-light:#fffbeb;--error:#f56565;--error-light:#fed7d7;--info:#4299e1;--info-light:#ebf8ff;--border:#e0e0e0;--border-hover:#d0d0d0;--border-focus:#f8c300;--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--shadow:0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px 0 rgba(0,0,0,0.06);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--gradient-primary:linear-gradient(135deg,#f8c300,#ffd886);--gradient-secondary:linear-gradient(135deg,#fff5d7,#f8c300);--gradient-success:linear-gradient(135deg,#48bb78,#38a169);--gradient-warning:linear-gradient(135deg,#ed8936,#dd6b20);--transition-fast:0.15s ease-in-out;--transition-normal:0.3s ease-in-out;--transition-slow:0.5s ease-in-out;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--radius-sm:0.25rem;--radius:0.5rem;--radius-md:0.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-full:9999px}@media(prefers-color-scheme:dark){:root{--background:#0f1419;--foreground:#f7fafc;--muted:#4a5568;--muted-foreground:#718096;--primary:#667eea;--primary-hover:#5a67d8;--primary-light:#2d3748;--primary-dark:#4c51bf;--success:#48bb78;--success-light:#22543d;--warning:#ed8936;--warning-light:#744210;--error:#f56565;--error-light:#742a2a;--info:#4299e1;--info-light:#2a4365;--border:#2d3748;--border-hover:#4a5568;--border-focus:#667eea;--background-light:#1a202c;--text-primary:#f7fafc;--text-muted:#a0aec0}}body,html{max-width:100vw;overflow-x:hidden;scroll-behavior:smooth}body{color:var(--foreground);background:var(--background);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;font-size:14px}*{box-sizing:border-box;padding:0;margin:0}a{color:inherit;text-decoration:none;transition:var(--transition-fast)}a:hover{color:var(--primary)}button{cursor:pointer;border:none;outline:none;transition:var(--transition-fast);font-family:inherit}@media(prefers-color-scheme:dark){html{color-scheme:dark}}.todo-calendar-page{max-width:1200px;margin:0 auto;padding:var(--spacing-xl)}.todo-calendar-page h1{text-align:center;margin-bottom:var(--spacing-2xl);color:var(--foreground);font-weight:700;font-size:2.5rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text}body.admin-portal>footer,body.admin-portal>header{display:none!important}.admin-portal{min-height:100vh;background:var(--background);display:flex;flex-direction:column;--portal-sidebar-width:280px}.admin-portal header{background:var(--sidebar-bg);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:-webkit-sticky;position:sticky;top:0;z-index:100;height:64px}.admin-portal header nav{height:100%}.admin-portal header nav .header-content{display:flex;justify-content:space-between;align-items:center;height:100%;padding:0 var(--spacing-xl)}.admin-portal header nav .header-left{display:flex;align-items:center}.admin-portal header nav .header-right{display:flex;align-items:center;gap:1rem;margin-left:auto}.admin-portal header nav .header-content .header-right{gap:0}.admin-portal header nav .portal-title,.admin-portal header nav .text-xl{color:#f8c300;font-weight:700;font-size:1.25rem;margin:0;padding:0}.admin-portal header nav .user-info-container{display:flex;align-items:center;gap:.75rem;margin-right:0}.admin-portal header nav .user-info{display:none}.admin-portal header nav .login-btn,.admin-portal header nav .logout-btn{padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;border:none;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.admin-portal header nav .login-btn{background:var(--primary);color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.1)}.admin-portal header nav .login-btn:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 6px rgba(0,0,0,.1)}.admin-portal header nav .login-btn:active{transform:translateY(0)}.admin-portal header nav .logout-btn{background:#ef4444;color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.1)}.admin-portal header nav .logout-btn:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 6px rgba(0,0,0,.1)}.admin-portal header nav .logout-btn:active{transform:translateY(0)}@media(max-width:1024px){.admin-portal header nav .header-content{padding:0 var(--spacing-lg);margin-left:0}.admin-portal .admin-portal header nav .header-right{gap:0}}@media(min-width:1025px){.admin-portal header nav .header-content{margin-left:var(--portal-sidebar-width,280px);width:auto;padding-left:var(--spacing-xl);padding-right:calc(var(--spacing-xl) + max((100vw - var(--portal-sidebar-width, 280px) - 1200px)/2,0px));margin-right:0;transition:margin var(--transition-normal,.3s ease-in-out),padding var(--transition-normal,.3s ease-in-out)}.admin-portal .admin-portal header nav .header-content .header-right .user-info-container{margin-right:0}}.admin-portal aside{background:var(--sidebar-bg);border-right:1px solid var(--border);box-shadow:var(--shadow-sm);width:var(--portal-sidebar-width,280px);flex-shrink:0}.admin-portal aside nav{padding:var(--spacing-lg) 0}.admin-portal aside nav ul{list-style:none;padding:0;margin:0}.admin-portal aside nav ul li{margin:0}.admin-portal aside nav ul li a{display:block;position:relative;border-radius:var(--radius);margin:var(--spacing-xs) var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-weight:500;transition:var(--transition-normal);color:var(--sidebar-text);text-decoration:none}.admin-portal aside nav ul li a:hover{background:hsla(0,0%,100%,.1);color:var(--primary);transform:translateX(4px);box-shadow:var(--shadow-sm)}.admin-portal aside nav ul li a.active{background:var(--primary);color:var(--foreground);box-shadow:var(--shadow-md)}.admin-portal .main-container{display:flex;flex:1 1;min-height:calc(100vh - 64px - 60px)}.admin-portal main{background:var(--background);padding:var(--spacing-xl);flex:1 1;overflow-y:auto;max-width:1200px;margin:0 auto;width:100%;box-sizing:border-box}.admin-portal main h1{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-sm);color:var(--primary)}.admin-portal main p{color:var(--muted);margin-bottom:var(--spacing-lg)}.admin-portal .btn,.admin-portal .greeting-management .greeting-list .empty-state .add-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .delete-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .edit-button,.admin-portal .greeting-management .modal-confirm .modal-actions .cancel-btn,.admin-portal .greeting-management .modal-confirm .modal-actions .submit-btn,.admin-portal .greeting-management .modal-form .form-actions .cancel-btn,.admin-portal .greeting-management .modal-form .form-actions .submit-btn,.admin-portal .greeting-management .page-header .add-button,.greeting-management .greeting-list .empty-state .admin-portal .add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .edit-button,.greeting-management .modal-confirm .modal-actions .admin-portal .cancel-btn,.greeting-management .modal-confirm .modal-actions .admin-portal .submit-btn,.greeting-management .modal-form .form-actions .admin-portal .cancel-btn,.greeting-management .modal-form .form-actions .admin-portal .submit-btn,.greeting-management .page-header .admin-portal .add-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius);font-weight:600;font-size:.875rem;transition:var(--transition-normal);cursor:pointer;border:1px solid rgba(0,0,0,0);position:relative;overflow:hidden}.admin-portal .btn:before,.admin-portal .greeting-management .greeting-list .empty-state .add-button:before,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .delete-button:before,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .edit-button:before,.admin-portal .greeting-management .modal-confirm .modal-actions .cancel-btn:before,.admin-portal .greeting-management .modal-confirm .modal-actions .submit-btn:before,.admin-portal .greeting-management .modal-form .form-actions .cancel-btn:before,.admin-portal .greeting-management .modal-form .form-actions .submit-btn:before,.admin-portal .greeting-management .page-header .add-button:before,.greeting-management .greeting-list .empty-state .admin-portal .add-button:before,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .delete-button:before,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .edit-button:before,.greeting-management .modal-confirm .modal-actions .admin-portal .cancel-btn:before,.greeting-management .modal-confirm .modal-actions .admin-portal .submit-btn:before,.greeting-management .modal-form .form-actions .admin-portal .cancel-btn:before,.greeting-management .modal-form .form-actions .admin-portal .submit-btn:before,.greeting-management .page-header .admin-portal .add-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:var(--transition-normal)}.admin-portal .btn:hover:before,.admin-portal .greeting-management .greeting-list .empty-state .add-button:hover:before,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .delete-button:hover:before,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .edit-button:hover:before,.admin-portal .greeting-management .modal-confirm .modal-actions .cancel-btn:hover:before,.admin-portal .greeting-management .modal-confirm .modal-actions .submit-btn:hover:before,.admin-portal .greeting-management .modal-form .form-actions .cancel-btn:hover:before,.admin-portal .greeting-management .modal-form .form-actions .submit-btn:hover:before,.admin-portal .greeting-management .page-header .add-button:hover:before,.greeting-management .greeting-list .empty-state .admin-portal .add-button:hover:before,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .delete-button:hover:before,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .edit-button:hover:before,.greeting-management .modal-confirm .modal-actions .admin-portal .cancel-btn:hover:before,.greeting-management .modal-confirm .modal-actions .admin-portal .submit-btn:hover:before,.greeting-management .modal-form .form-actions .admin-portal .cancel-btn:hover:before,.greeting-management .modal-form .form-actions .admin-portal .submit-btn:hover:before,.greeting-management .page-header .admin-portal .add-button:hover:before{left:100%}.admin-portal .btn.btn-primary,.admin-portal .greeting-management .greeting-list .empty-state .add-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-primary.delete-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-primary.edit-button,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-primary.cancel-btn,.admin-portal .greeting-management .modal-confirm .modal-actions .submit-btn,.admin-portal .greeting-management .modal-form .form-actions .btn-primary.cancel-btn,.admin-portal .greeting-management .modal-form .form-actions .submit-btn,.admin-portal .greeting-management .page-header .add-button,.greeting-management .greeting-list .empty-state .admin-portal .add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-primary.delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-primary.edit-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-confirm .modal-actions .delete-button.submit-btn,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-confirm .modal-actions .edit-button.submit-btn,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-form .form-actions .delete-button.submit-btn,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-form .form-actions .edit-button.submit-btn,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-primary.cancel-btn,.greeting-management .modal-confirm .modal-actions .admin-portal .submit-btn,.greeting-management .modal-form .form-actions .admin-portal .btn-primary.cancel-btn,.greeting-management .modal-form .form-actions .admin-portal .submit-btn,.greeting-management .page-header .admin-portal .add-button{background:var(--primary);color:var(--foreground);box-shadow:var(--shadow-md)}.admin-portal .btn.btn-primary:hover,.admin-portal .greeting-management .greeting-list .empty-state .add-button:hover,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-primary.delete-button:hover,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-primary.edit-button:hover,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-primary.cancel-btn:hover,.admin-portal .greeting-management .modal-confirm .modal-actions .submit-btn:hover,.admin-portal .greeting-management .modal-form .form-actions .btn-primary.cancel-btn:hover,.admin-portal .greeting-management .modal-form .form-actions .submit-btn:hover,.admin-portal .greeting-management .page-header .add-button:hover,.greeting-management .greeting-list .empty-state .admin-portal .add-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-primary.delete-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-primary.edit-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-confirm .modal-actions .delete-button.submit-btn:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-confirm .modal-actions .edit-button.submit-btn:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-form .form-actions .delete-button.submit-btn:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-form .form-actions .edit-button.submit-btn:hover,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-primary.cancel-btn:hover,.greeting-management .modal-confirm .modal-actions .admin-portal .submit-btn:hover,.greeting-management .modal-form .form-actions .admin-portal .btn-primary.cancel-btn:hover,.greeting-management .modal-form .form-actions .admin-portal .submit-btn:hover,.greeting-management .page-header .admin-portal .add-button:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.admin-portal .btn.btn-primary:active,.admin-portal .greeting-management .greeting-list .empty-state .add-button:active,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-primary.delete-button:active,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-primary.edit-button:active,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-primary.cancel-btn:active,.admin-portal .greeting-management .modal-confirm .modal-actions .submit-btn:active,.admin-portal .greeting-management .modal-form .form-actions .btn-primary.cancel-btn:active,.admin-portal .greeting-management .modal-form .form-actions .submit-btn:active,.admin-portal .greeting-management .page-header .add-button:active,.greeting-management .greeting-list .empty-state .admin-portal .add-button:active,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-primary.delete-button:active,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-primary.edit-button:active,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-confirm .modal-actions .delete-button.submit-btn:active,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-confirm .modal-actions .edit-button.submit-btn:active,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-form .form-actions .delete-button.submit-btn:active,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-form .form-actions .edit-button.submit-btn:active,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-primary.cancel-btn:active,.greeting-management .modal-confirm .modal-actions .admin-portal .submit-btn:active,.greeting-management .modal-form .form-actions .admin-portal .btn-primary.cancel-btn:active,.greeting-management .modal-form .form-actions .admin-portal .submit-btn:active,.greeting-management .page-header .admin-portal .add-button:active{transform:translateY(0)}.admin-portal .btn.btn-secondary,.admin-portal .greeting-management .greeting-list .empty-state .btn-secondary.add-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-secondary.delete-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-secondary.edit-button,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-secondary.cancel-btn,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-secondary.submit-btn,.admin-portal .greeting-management .modal-form .form-actions .btn-secondary.cancel-btn,.admin-portal .greeting-management .modal-form .form-actions .btn-secondary.submit-btn,.admin-portal .greeting-management .page-header .btn-secondary.add-button,.greeting-management .greeting-list .empty-state .admin-portal .btn-secondary.add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-secondary.delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-secondary.edit-button,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-secondary.cancel-btn,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-secondary.submit-btn,.greeting-management .modal-form .form-actions .admin-portal .btn-secondary.cancel-btn,.greeting-management .modal-form .form-actions .admin-portal .btn-secondary.submit-btn,.greeting-management .page-header .admin-portal .btn-secondary.add-button{background:var(--gradient-secondary);color:#fff;box-shadow:var(--shadow-md)}.admin-portal .btn.btn-secondary:hover,.admin-portal .greeting-management .greeting-list .empty-state .btn-secondary.add-button:hover,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-secondary.delete-button:hover,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-secondary.edit-button:hover,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-secondary.cancel-btn:hover,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-secondary.submit-btn:hover,.admin-portal .greeting-management .modal-form .form-actions .btn-secondary.cancel-btn:hover,.admin-portal .greeting-management .modal-form .form-actions .btn-secondary.submit-btn:hover,.admin-portal .greeting-management .page-header .btn-secondary.add-button:hover,.greeting-management .greeting-list .empty-state .admin-portal .btn-secondary.add-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-secondary.delete-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-secondary.edit-button:hover,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-secondary.cancel-btn:hover,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-secondary.submit-btn:hover,.greeting-management .modal-form .form-actions .admin-portal .btn-secondary.cancel-btn:hover,.greeting-management .modal-form .form-actions .admin-portal .btn-secondary.submit-btn:hover,.greeting-management .page-header .admin-portal .btn-secondary.add-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.admin-portal .btn.btn-outline,.admin-portal .greeting-management .greeting-list .empty-state .btn-outline.add-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-outline.delete-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .edit-button,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-outline.submit-btn,.admin-portal .greeting-management .modal-confirm .modal-actions .cancel-btn,.admin-portal .greeting-management .modal-form .form-actions .btn-outline.submit-btn,.admin-portal .greeting-management .modal-form .form-actions .cancel-btn,.admin-portal .greeting-management .page-header .btn-outline.add-button,.greeting-management .greeting-list .empty-state .admin-portal .btn-outline.add-button,.greeting-management .greeting-list .empty-state .admin-portal .greeting-item .greeting-actions .add-button.edit-button,.greeting-management .greeting-list .empty-state .admin-portal .modal-confirm .modal-actions .add-button.cancel-btn,.greeting-management .greeting-list .empty-state .admin-portal .modal-form .form-actions .add-button.cancel-btn,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-outline.delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .edit-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-confirm .modal-actions .delete-button.cancel-btn,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-form .form-actions .delete-button.cancel-btn,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-outline.submit-btn,.greeting-management .modal-confirm .modal-actions .admin-portal .cancel-btn,.greeting-management .modal-form .form-actions .admin-portal .btn-outline.submit-btn,.greeting-management .modal-form .form-actions .admin-portal .cancel-btn,.greeting-management .page-header .admin-portal .btn-outline.add-button,.greeting-management .page-header .admin-portal .greeting-list .greeting-item .greeting-actions .add-button.edit-button,.greeting-management .page-header .admin-portal .modal-confirm .modal-actions .add-button.cancel-btn,.greeting-management .page-header .admin-portal .modal-form .form-actions .add-button.cancel-btn{background:rgba(0,0,0,0);color:var(--foreground);border-color:var(--border)}.admin-portal .btn.btn-outline:hover,.admin-portal .greeting-management .greeting-list .empty-state .btn-outline.add-button:hover,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-outline.delete-button:hover,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .edit-button:hover,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-outline.submit-btn:hover,.admin-portal .greeting-management .modal-confirm .modal-actions .cancel-btn:hover,.admin-portal .greeting-management .modal-form .form-actions .btn-outline.submit-btn:hover,.admin-portal .greeting-management .modal-form .form-actions .cancel-btn:hover,.admin-portal .greeting-management .page-header .btn-outline.add-button:hover,.greeting-management .greeting-list .empty-state .admin-portal .btn-outline.add-button:hover,.greeting-management .greeting-list .empty-state .admin-portal .greeting-item .greeting-actions .add-button.edit-button:hover,.greeting-management .greeting-list .empty-state .admin-portal .modal-confirm .modal-actions .add-button.cancel-btn:hover,.greeting-management .greeting-list .empty-state .admin-portal .modal-form .form-actions .add-button.cancel-btn:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-outline.delete-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .edit-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-confirm .modal-actions .delete-button.cancel-btn:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-form .form-actions .delete-button.cancel-btn:hover,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-outline.submit-btn:hover,.greeting-management .modal-confirm .modal-actions .admin-portal .cancel-btn:hover,.greeting-management .modal-form .form-actions .admin-portal .btn-outline.submit-btn:hover,.greeting-management .modal-form .form-actions .admin-portal .cancel-btn:hover,.greeting-management .page-header .admin-portal .btn-outline.add-button:hover,.greeting-management .page-header .admin-portal .greeting-list .greeting-item .greeting-actions .add-button.edit-button:hover,.greeting-management .page-header .admin-portal .modal-confirm .modal-actions .add-button.cancel-btn:hover,.greeting-management .page-header .admin-portal .modal-form .form-actions .add-button.cancel-btn:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.admin-portal .btn.btn-outline:disabled,.admin-portal .greeting-management .greeting-list .empty-state .btn-outline.add-button:disabled,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-outline.delete-button:disabled,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .edit-button:disabled,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-outline.submit-btn:disabled,.admin-portal .greeting-management .modal-confirm .modal-actions .cancel-btn:disabled,.admin-portal .greeting-management .modal-form .form-actions .btn-outline.submit-btn:disabled,.admin-portal .greeting-management .modal-form .form-actions .cancel-btn:disabled,.admin-portal .greeting-management .page-header .btn-outline.add-button:disabled,.greeting-management .greeting-list .empty-state .admin-portal .btn-outline.add-button:disabled,.greeting-management .greeting-list .empty-state .admin-portal .greeting-item .greeting-actions .add-button.edit-button:disabled,.greeting-management .greeting-list .empty-state .admin-portal .modal-confirm .modal-actions .add-button.cancel-btn:disabled,.greeting-management .greeting-list .empty-state .admin-portal .modal-form .form-actions .add-button.cancel-btn:disabled,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-outline.delete-button:disabled,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .edit-button:disabled,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-confirm .modal-actions .delete-button.cancel-btn:disabled,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .modal-form .form-actions .delete-button.cancel-btn:disabled,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-outline.submit-btn:disabled,.greeting-management .modal-confirm .modal-actions .admin-portal .cancel-btn:disabled,.greeting-management .modal-form .form-actions .admin-portal .btn-outline.submit-btn:disabled,.greeting-management .modal-form .form-actions .admin-portal .cancel-btn:disabled,.greeting-management .page-header .admin-portal .btn-outline.add-button:disabled,.greeting-management .page-header .admin-portal .greeting-list .greeting-item .greeting-actions .add-button.edit-button:disabled,.greeting-management .page-header .admin-portal .modal-confirm .modal-actions .add-button.cancel-btn:disabled,.greeting-management .page-header .admin-portal .modal-form .form-actions .add-button.cancel-btn:disabled{background:#e0e0e0;color:#aaa;border-color:#e0e0e0;cursor:not-allowed}.admin-portal .btn.btn-success,.admin-portal .greeting-management .greeting-list .empty-state .btn-success.add-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-success.delete-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-success.edit-button,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-success.cancel-btn,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-success.submit-btn,.admin-portal .greeting-management .modal-form .form-actions .btn-success.cancel-btn,.admin-portal .greeting-management .modal-form .form-actions .btn-success.submit-btn,.admin-portal .greeting-management .page-header .btn-success.add-button,.greeting-management .greeting-list .empty-state .admin-portal .btn-success.add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-success.delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-success.edit-button,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-success.cancel-btn,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-success.submit-btn,.greeting-management .modal-form .form-actions .admin-portal .btn-success.cancel-btn,.greeting-management .modal-form .form-actions .admin-portal .btn-success.submit-btn,.greeting-management .page-header .admin-portal .btn-success.add-button{background:var(--gradient-success);color:#fff;box-shadow:var(--shadow-md)}.admin-portal .btn.btn-success:hover,.admin-portal .greeting-management .greeting-list .empty-state .btn-success.add-button:hover,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-success.delete-button:hover,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-success.edit-button:hover,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-success.cancel-btn:hover,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-success.submit-btn:hover,.admin-portal .greeting-management .modal-form .form-actions .btn-success.cancel-btn:hover,.admin-portal .greeting-management .modal-form .form-actions .btn-success.submit-btn:hover,.admin-portal .greeting-management .page-header .btn-success.add-button:hover,.greeting-management .greeting-list .empty-state .admin-portal .btn-success.add-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-success.delete-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-success.edit-button:hover,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-success.cancel-btn:hover,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-success.submit-btn:hover,.greeting-management .modal-form .form-actions .admin-portal .btn-success.cancel-btn:hover,.greeting-management .modal-form .form-actions .admin-portal .btn-success.submit-btn:hover,.greeting-management .page-header .admin-portal .btn-success.add-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.admin-portal .btn.btn-warning,.admin-portal .greeting-management .greeting-list .empty-state .btn-warning.add-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-warning.delete-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-warning.edit-button,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-warning.cancel-btn,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-warning.submit-btn,.admin-portal .greeting-management .modal-form .form-actions .btn-warning.cancel-btn,.admin-portal .greeting-management .modal-form .form-actions .btn-warning.submit-btn,.admin-portal .greeting-management .page-header .btn-warning.add-button,.greeting-management .greeting-list .empty-state .admin-portal .btn-warning.add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-warning.delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-warning.edit-button,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-warning.cancel-btn,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-warning.submit-btn,.greeting-management .modal-form .form-actions .admin-portal .btn-warning.cancel-btn,.greeting-management .modal-form .form-actions .admin-portal .btn-warning.submit-btn,.greeting-management .page-header .admin-portal .btn-warning.add-button{background:var(--gradient-warning);color:#fff;box-shadow:var(--shadow-md)}.admin-portal .btn.btn-warning:hover,.admin-portal .greeting-management .greeting-list .empty-state .btn-warning.add-button:hover,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-warning.delete-button:hover,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-warning.edit-button:hover,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-warning.cancel-btn:hover,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-warning.submit-btn:hover,.admin-portal .greeting-management .modal-form .form-actions .btn-warning.cancel-btn:hover,.admin-portal .greeting-management .modal-form .form-actions .btn-warning.submit-btn:hover,.admin-portal .greeting-management .page-header .btn-warning.add-button:hover,.greeting-management .greeting-list .empty-state .admin-portal .btn-warning.add-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-warning.delete-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-warning.edit-button:hover,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-warning.cancel-btn:hover,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-warning.submit-btn:hover,.greeting-management .modal-form .form-actions .admin-portal .btn-warning.cancel-btn:hover,.greeting-management .modal-form .form-actions .admin-portal .btn-warning.submit-btn:hover,.greeting-management .page-header .admin-portal .btn-warning.add-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.admin-portal .btn.btn-danger,.admin-portal .greeting-management .greeting-list .empty-state .btn-danger.add-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-danger.delete-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-danger.edit-button,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-danger.cancel-btn,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-danger.submit-btn,.admin-portal .greeting-management .modal-form .form-actions .btn-danger.cancel-btn,.admin-portal .greeting-management .modal-form .form-actions .btn-danger.submit-btn,.admin-portal .greeting-management .page-header .btn-danger.add-button,.greeting-management .greeting-list .empty-state .admin-portal .btn-danger.add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-danger.delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-danger.edit-button,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-danger.cancel-btn,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-danger.submit-btn,.greeting-management .modal-form .form-actions .admin-portal .btn-danger.cancel-btn,.greeting-management .modal-form .form-actions .admin-portal .btn-danger.submit-btn,.greeting-management .page-header .admin-portal .btn-danger.add-button{background:linear-gradient(135deg,#f56565,#e53e3e);color:#fff;box-shadow:var(--shadow-md)}.admin-portal .btn.btn-danger:hover,.admin-portal .greeting-management .greeting-list .empty-state .btn-danger.add-button:hover,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-danger.delete-button:hover,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-danger.edit-button:hover,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-danger.cancel-btn:hover,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-danger.submit-btn:hover,.admin-portal .greeting-management .modal-form .form-actions .btn-danger.cancel-btn:hover,.admin-portal .greeting-management .modal-form .form-actions .btn-danger.submit-btn:hover,.admin-portal .greeting-management .page-header .btn-danger.add-button:hover,.greeting-management .greeting-list .empty-state .admin-portal .btn-danger.add-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-danger.delete-button:hover,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-danger.edit-button:hover,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-danger.cancel-btn:hover,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-danger.submit-btn:hover,.greeting-management .modal-form .form-actions .admin-portal .btn-danger.cancel-btn:hover,.greeting-management .modal-form .form-actions .admin-portal .btn-danger.submit-btn:hover,.greeting-management .page-header .admin-portal .btn-danger.add-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.admin-portal .btn.btn-sm,.admin-portal .greeting-management .greeting-list .empty-state .btn-sm.add-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-sm.delete-button,.admin-portal .greeting-management .greeting-list .greeting-item .greeting-actions .btn-sm.edit-button,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-sm.cancel-btn,.admin-portal .greeting-management .modal-confirm .modal-actions .btn-sm.submit-btn,.admin-portal .greeting-management .modal-form .form-actions .btn-sm.cancel-btn,.admin-portal .greeting-management .modal-form .form-actions .btn-sm.submit-btn,.admin-portal .greeting-management .page-header .btn-sm.add-button,.greeting-management .greeting-list .empty-state .admin-portal .btn-sm.add-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-sm.delete-button,.greeting-management .greeting-list .greeting-item .greeting-actions .admin-portal .btn-sm.edit-button,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-sm.cancel-btn,.greeting-management .modal-confirm .modal-actions .admin-portal .btn-sm.submit-btn,.greeting-management .modal-form .form-actions .admin-portal .btn-sm.cancel-btn,.greeting-management .modal-form .form-actions .admin-portal .btn-sm.submit-btn,.greeting-management .page-header .admin-portal .btn-sm.add-button{padding:var(--spacing-xs) var(--spacing-md);font-size:.75rem;gap:var(--spacing-xs)}.admin-portal .card{background:#f7f7f7;border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow);transition:var(--transition-normal);position:relative;overflow:hidden}.admin-portal .card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary)}.admin-portal .card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.admin-portal .card.card-stats{text-align:center}.admin-portal .card.card-stats .stat-number{font-size:2.5rem;font-weight:700;color:var(--primary);margin-bottom:var(--spacing-sm)}.admin-portal .card.card-stats .stat-label{color:var(--muted);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.admin-portal .status-badge{display:inline-block;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;text-align:center}.admin-portal .status-badge.active{background:var(--success-light);color:var(--success)}.admin-portal .status-badge.inactive{background:var(--error-light);color:var(--error)}.admin-portal .status-badge.warning{background:var(--warning-light);color:var(--warning)}.admin-portal .space-y-6>*+*{margin-top:1.5rem}.admin-portal .flex{display:flex}.admin-portal .justify-between{justify-content:space-between}.admin-portal .items-center{align-items:center}.admin-portal .gap-2{gap:.5rem}.admin-portal .text-2xl{font-size:1.5rem}.admin-portal .font-bold{font-weight:700}.admin-portal .text-gray-900{color:#111827}.admin-portal .text-xl{font-size:1.25rem}.admin-portal .font-semibold{font-weight:600}.admin-portal .mb-4{margin-bottom:1rem}.admin-portal .text-lg{font-size:1.125rem}.admin-portal .overflow-x-auto{overflow-x:auto}.admin-portal .text-center{text-align:center}.admin-portal .py-8{padding-top:2rem;padding-bottom:2rem}.admin-portal .text-gray-500{color:#6b7280}.admin-portal .max-w-xs{max-width:20rem}.admin-portal .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-portal .font-medium{font-weight:500}.admin-portal .filter-section{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.admin-portal .filter-section .filter-btn{padding:.5rem 1rem;border:1px solid var(--border);background:#fff;color:var(--text-primary);border-radius:var(--radius);font-size:.875rem;cursor:pointer;transition:var(--transition-fast)}.admin-portal .filter-section .filter-btn:hover{background:var(--background);border-color:var(--border-hover)}.admin-portal .filter-section .filter-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.admin-portal .error-message{text-align:center;padding:1rem;margin:1rem 0;background:var(--error-light);color:var(--error);border:1px solid var(--error);border-radius:var(--radius);font-size:.875rem}.admin-portal .inquiry-link{color:var(--primary);text-decoration:none;font-weight:500}.admin-portal .inquiry-link:hover{text-decoration:underline}.admin-portal .pagination-section{margin-top:1.5rem}.admin-portal .pagination-nav{display:flex;justify-content:center}.admin-portal .pagination-list{display:flex;gap:.25rem;list-style:none;margin:0;padding:0}.admin-portal .pagination-btn{padding:.5rem .75rem;border:1px solid var(--border);background:#fff;color:var(--text-primary);border-radius:var(--radius);cursor:pointer;transition:var(--transition-fast)}.admin-portal .pagination-btn:hover{background:var(--background);border-color:var(--border-hover)}.admin-portal .pagination-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.admin-portal .table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow)}.admin-portal .table td,.admin-portal .table th{padding:var(--spacing-lg);text-align:left;border-bottom:1px solid var(--border)}.admin-portal .table img{max-width:60px;max-height:45px;width:60px;height:45px;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border)}.admin-portal .table .thumbnail-column{width:80px;min-width:80px}.admin-portal .table .content-column{max-width:300px;word-wrap:break-word}.admin-portal .table th{font-weight:600;background:var(--primary);color:var(--foreground);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.admin-portal .table tr{transition:var(--transition-fast)}.admin-portal .table tr:hover{background:var(--primary-light)}.admin-portal .table tr:last-child td{border-bottom:none}.admin-portal .table .status-badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.admin-portal .table .status-badge.active{background:var(--success-light);color:var(--success)}.admin-portal .table .status-badge.inactive{background:var(--error-light);color:var(--error)}.admin-portal .table .status-badge.pending{background:var(--warning-light);color:var(--warning)}.admin-portal footer{background:var(--sidebar-bg);color:var(--sidebar-text);padding:var(--spacing-lg);text-align:center;border-top:1px solid var(--border);height:60px;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:500}.admin-portal footer .footer-content{display:flex;align-items:center;gap:var(--spacing-md)}.admin-portal footer .footer-content .footer-logo{color:#f8c300;font-weight:700}.admin-portal footer .footer-content .footer-text{color:var(--sidebar-text)}.admin-portal footer .footer-content .footer-year{color:var(--muted)}.organization-thumbnail{width:100px;height:100px;background-color:var(--border);border-radius:var(--radius);overflow:hidden;flex-shrink:0;min-width:100px;min-height:100px}.organization-thumbnail__image{width:100%;height:100%;object-fit:cover}.organization-preview__container{max-width:100%;margin:0 auto}.organization-preview__image-wrapper{width:100%;max-width:100%;min-height:500px;display:flex;align-items:center;justify-content:center}.organization-preview__image{width:100%;height:auto;max-height:600px;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);object-fit:contain}.organization-list__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.organization-list__title{font-size:1.25rem;font-weight:600}.organization-list__item{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--spacing-md);background-color:#f7f7f7;transition:background-color var(--transition-fast)}.organization-list__item:hover{background-color:#fff5d7}.organization-list__item__content{display:flex;align-items:center;justify-content:space-between}.organization-list__item__info{display:flex;align-items:center;gap:var(--spacing-md)}.organization-list__item__details .title{font-weight:500;font-size:.875rem}.organization-list__item__details .date{font-size:.75rem;color:var(--muted-foreground)}.organization-list__item__actions{display:flex;align-items:center;gap:var(--spacing-md)}.organization-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--spacing-xl);gap:var(--spacing-xl);margin-top:var(--spacing-2xl)}@media(min-width:768px){.organization-stats{grid-template-columns:repeat(3,1fr)}}.organization-list-section{min-height:500px}.organization-upload__input{display:none}.organization-upload__error{color:var(--error);background-color:var(--error-light);padding:var(--spacing-md);border-radius:var(--radius);margin-bottom:var(--spacing-lg)}.organization-preview-section{margin-bottom:var(--spacing-2xl)}.organization-preview-section__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.organization-preview-section__title{font-size:1.25rem;font-weight:600}.organization-preview-section__content{background-color:var(--background);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.organization-preview-section__image-container{display:flex;justify-content:center;margin-bottom:var(--spacing-md)}.organization-preview-section__date{text-align:center;font-size:.875rem;color:var(--muted-foreground)}.video-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--spacing-xl);gap:var(--spacing-xl);margin-top:var(--spacing-2xl)}@media(min-width:768px){.video-stats{grid-template-columns:repeat(3,1fr)}}.banner-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--spacing-xl);gap:var(--spacing-xl);margin-top:var(--spacing-2xl)}@media(min-width:768px){.banner-stats{grid-template-columns:repeat(3,1fr)}}.tiptap-editor-container{border:1px solid var(--border-color,#ddd);border-radius:var(--border-radius,4px);overflow:hidden}.highlight-light-yellow{background-color:khaki!important}.highlight-light-green{background-color:#98fb98!important}.highlight-peach{background-color:#ffe4b5!important}.ProseMirror span:empty{display:inline-block;width:0;height:0;overflow:hidden}.ProseMirror p{margin:0 0 var(--spacing-sm) 0}.ProseMirror p:last-child{margin-bottom:0}.ProseMirror ol,.ProseMirror ul{margin:var(--spacing-sm) 0;padding-left:var(--spacing-lg)}.ProseMirror li{margin:var(--spacing-xs) 0}.ProseMirror a{color:var(--primary);text-decoration:underline}.ProseMirror a:hover{color:var(--primary-hover)}.ProseMirror img{max-width:100%;height:auto;border-radius:var(--radius);margin:var(--spacing-sm) 0}.ProseMirror blockquote{border-left:4px solid var(--primary);padding-left:var(--spacing-md);margin:var(--spacing-md) 0;font-style:italic;color:var(--text-muted)}.ProseMirror code{background:var(--background-light);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-family:Courier New,monospace;font-size:.875em}.ProseMirror pre{background:var(--background-light);padding:var(--spacing-md);border-radius:var(--radius);overflow-x:auto;margin:var(--spacing-md) 0}.ProseMirror pre code{background:none;padding:0}.greeting-management .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--primary-light)}.greeting-management .page-header h1{margin:0;color:var(--primary);font-size:2rem;font-weight:700}.greeting-management .page-header .add-button{padding:var(--spacing-sm) var(--spacing-lg);font-size:.875rem}.greeting-management .greeting-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--spacing-xl);gap:var(--spacing-xl);margin-top:var(--spacing-2xl)}@media(min-width:768px){.greeting-management .greeting-stats{grid-template-columns:repeat(3,1fr)}}.greeting-management .greeting-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.greeting-management .greeting-list .empty-state{text-align:center;padding:var(--spacing-2xl);background:var(--background-light);border-radius:var(--radius-lg);border:2px dashed var(--border)}.greeting-management .greeting-list .empty-state p{color:var(--text-muted);font-size:1.1rem;margin-bottom:var(--spacing-lg)}.greeting-management .greeting-list .greeting-item{background:var(--background-light);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow);border:1px solid var(--border);transition:var(--transition-normal)}.greeting-management .greeting-list .greeting-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.greeting-management .greeting-list .greeting-item .greeting-info{flex:1 1}.greeting-management .greeting-list .greeting-item .greeting-info h3{margin:0 0 var(--spacing-sm) 0;color:var(--foreground);font-size:1.25rem;font-weight:600}.greeting-management .greeting-list .greeting-item .greeting-info .greeting-content{margin-bottom:var(--spacing-md)}.greeting-management .greeting-list .greeting-item .greeting-info .greeting-content .content-preview{color:var(--text-primary);line-height:1.6;max-height:100px;overflow:hidden;position:relative}.greeting-management .greeting-list .greeting-item .greeting-info .greeting-content .content-preview:after{content:"";position:absolute;bottom:0;right:0;width:100%;height:20px;background:linear-gradient(transparent,var(--background-light))}.greeting-management .greeting-list .greeting-item .greeting-info .greeting-dates{display:flex;gap:var(--spacing-lg);font-size:.875rem;color:var(--text-muted)}.greeting-management .greeting-list .greeting-item .greeting-info .greeting-dates span{display:flex;align-items:center;gap:var(--spacing-xs)}.greeting-management .greeting-list .greeting-item .greeting-actions{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border)}.greeting-management .greeting-list .greeting-item .greeting-actions .edit-button{padding:var(--spacing-xs) var(--spacing-md);font-size:.875rem}.greeting-management .greeting-list .greeting-item .greeting-actions .delete-button{background:var(--error);color:#fff;padding:var(--spacing-xs) var(--spacing-md);font-size:.875rem}.greeting-management .greeting-list .greeting-item .greeting-actions .delete-button:hover{background:#e53e3e;transform:translateY(-1px)}.greeting-management .modal-form .form-group{margin-bottom:var(--spacing-lg)}.greeting-management .modal-form .form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:600;color:var(--foreground)}.greeting-management .modal-form .form-group input[type=text],.greeting-management .modal-form .form-group textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--border);border-radius:var(--radius);font-size:.875rem;transition:var(--transition-fast)}.greeting-management .modal-form .form-group input[type=text]:focus,.greeting-management .modal-form .form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.greeting-management .modal-form .form-group input[type=checkbox]{margin-right:var(--spacing-sm);width:1rem;height:1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background-color:#fff;cursor:pointer;transition:var(--transition-fast)}.greeting-management .modal-form .form-group input[type=checkbox]:checked{background-color:var(--primary);border-color:var(--primary);background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");background-size:12px;background-position:50%;background-repeat:no-repeat}.greeting-management .modal-form .form-group input[type=checkbox]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.greeting-management .modal-form .form-group input[type=checkbox]:hover{border-color:var(--primary)}.greeting-management .modal-form .form-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-xl)}.greeting-management .modal-confirm{text-align:center}.greeting-management .modal-confirm p{margin-bottom:var(--spacing-lg);color:var(--text-primary)}.greeting-management .modal-confirm .modal-actions{display:flex;gap:var(--spacing-sm);justify-content:center}