:root{--color-primary:#8b5a96;--color-secondary:#d4a5a5;--color-accent-neutral:#2c2c2c;--color-accent-light:#f8f4f9;--color-highlight:#e8b4b8;--primary-50:#f8f4f9;--primary-100:#f0e8f4;--primary-200:#e1d1e8;--primary-300:#d2b9dc;--primary-400:#c3a1d0;--primary-500:#b489c4;--primary-600:#8b5a96;--primary-700:#7a4a85;--primary-800:#693a74;--primary-900:#582a63;--secondary-50:#fdf8f8;--secondary-100:#faf0f0;--secondary-200:#f5e1e1;--secondary-300:#f0d2d2;--secondary-400:#ebc3c3;--secondary-500:#d4a5a5;--secondary-600:#c99494;--secondary-700:#be8383;--secondary-800:#b37272;--secondary-900:#a86161;--success-50:#f0fdf4;--success-100:#dcfce7;--success-200:#bbf7d0;--success-300:#86efac;--success-400:#4ade80;--success-500:#22c55e;--success-600:#16a34a;--success-700:#15803d;--success-800:#166534;--success-900:#14532d;--warning-50:#fffbeb;--warning-100:#fef3c7;--warning-200:#fde68a;--warning-300:#fcd34d;--warning-400:#fbbf24;--warning-500:#f59e0b;--warning-600:#d97706;--warning-700:#b45309;--warning-800:#92400e;--warning-900:#78350f;--error-50:#fef2f2;--error-100:#fee2e2;--error-200:#fecaca;--error-300:#fca5a5;--error-400:#f87171;--error-500:#ef4444;--error-600:#dc2626;--error-700:#b91c1c;--error-800:#991b1b;--error-900:#7f1d1d;--white:#fff;--black:#000;--gray-50:#fafafa;--gray-100:#f5f5f5;--gray-200:#e5e5e5;--gray-300:#d4d4d4;--gray-400:#a3a3a3;--gray-500:#737373;--gray-600:#525252;--gray-700:#404040;--gray-800:#262626;--gray-900:#171717;--text-primary:var(--color-accent-neutral);--text-secondary:var(--gray-600);--text-muted:var(--gray-500);--text-inverse:var(--white);--bg-primary:var(--white);--bg-secondary:var(--color-accent-light);--bg-tertiary:var(--gray-100);--bg-dark:var(--color-accent-neutral);--border-light:var(--gray-200);--border-medium:var(--gray-300);--border-dark:var(--gray-400);--shadow-xs:0 1px 2px 0 rgba(0,0,0,.05);--shadow-sm:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--shadow-2xl:0 25px 50px -12px rgba(0,0,0,.25);--shadow-wedding:0 20px 25px -5px rgba(139,90,150,.15),0 8px 10px -6px rgba(139,90,150,.1);--shadow-wedding-lg:0 25px 50px -12px rgba(139,90,150,.25);--shadow-card:0 20px 25px -5px rgba(79,140,255,.15),0 8px 10px -6px rgba(79,140,255,.1);--shadow-card-lg:0 25px 50px -12px rgba(79,140,255,.25);--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:0.125rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--radius-full:9999px;--font-family-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-family-serif:"Playfair Display",Georgia,Cambria,"Times New Roman",Times,serif;--font-family-mono:"JetBrains Mono","Fira Code","Cascadia Code","Roboto Mono",Consolas,"Courier New",monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-size-6xl:3.75rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--transition-fast:150ms ease-in-out;--transition-normal:250ms ease-in-out;--transition-slow:350ms ease-in-out;--gradient-wedding-primary:linear-gradient(135deg,var(--color-primary) 0%,var(--primary-700) 100%);--gradient-wedding-secondary:linear-gradient(135deg,var(--color-secondary) 0%,var(--secondary-700) 100%);--gradient-wedding-accent:linear-gradient(135deg,var(--color-highlight) 0%,var(--color-secondary) 100%);--gradient-wedding-bg:linear-gradient(135deg,var(--color-accent-light) 0%,var(--white) 100%);--gradient-card-primary:linear-gradient(135deg,#4f8cff,#2563eb);--gradient-card-secondary:linear-gradient(135deg,#2563eb,#1e40af);--gradient-card-accent:linear-gradient(135deg,#60a5fa,#3b82f6);--gradient-admin-primary:linear-gradient(135deg,#f59e0b,#d97706);--gradient-admin-secondary:linear-gradient(135deg,#ef4444,#dc2626);--gradient-admin-accent:linear-gradient(135deg,#10b981,#059669);--gradient-dashboard-primary:linear-gradient(135deg,#8b5cf6,#7c3aed);--gradient-dashboard-secondary:linear-gradient(135deg,#06b6d4,#0891b2);--gradient-dashboard-accent:linear-gradient(135deg,#f97316,#ea580c)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family-sans);font-size:var(--font-size-base);line-height:var(--line-height-normal);background-color:var(--bg-secondary);min-height:100vh;overflow-x:hidden}body,h1,h2,h3,h4,h5,h6{color:var(--text-primary)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin-bottom:var(--space-4);letter-spacing:-.025em}h1{font-size:var(--font-size-4xl)}h1,h2{font-weight:var(--font-weight-bold)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h3,h4{font-weight:var(--font-weight-semibold)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h5,h6{font-weight:var(--font-weight-medium)}h6{font-size:var(--font-size-base)}p{margin-bottom:var(--space-4);color:var(--text-secondary);line-height:var(--line-height-relaxed)}a{color:var(--primary-600);transition:all var(--transition-fast);position:relative}a,a:hover{text-decoration:none}a:hover{color:var(--primary-700)}a:focus{outline:2px solid var(--primary-500);outline-offset:2px}.font-light{font-weight:var(--font-weight-light)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-inverse{color:var(--text-inverse)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--gray-100);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:var(--radius-full);-webkit-transition:background var(--transition-fast);transition:background var(--transition-fast)}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}:focus{outline:2px solid var(--primary-500);outline-offset:2px}:focus:not(:focus-visible){outline:none}::selection{background-color:#667eea;color:#fff}::-moz-selection{background-color:#667eea;color:#fff}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@media (max-width:640px){.sm\:text-center{text-align:center}.sm\:text-left{text-align:left}.sm\:text-right{text-align:right}}@media (max-width:768px){.md\:text-center{text-align:center}.md\:text-left{text-align:left}.md\:text-right{text-align:right}}@media (max-width:1024px){.lg\:text-center{text-align:center}.lg\:text-left{text-align:left}.lg\:text-right{text-align:right}}@media (max-width:767px){*{box-sizing:border-box}body,html{overflow-x:hidden;width:100%;max-width:100vw;-webkit-overflow-scrolling:touch}.admin-container,.card-grid,.container,.dashboard-container,.dashboard-grid,.deck-cards-container,.deck-cards-content,.deck-cards-grouped,.deck-details-panel,.decks-content,.form-grid,.mtg-decks-container,.users-grid,.wedding-container{overflow-x:hidden;width:100%;max-width:100%}.h1,h1{font-size:1.75rem;line-height:1.2}.h2,h2{font-size:1.5rem;line-height:1.3}.h3,h3{font-size:1.25rem}.h3,.h4,h3,h4{line-height:1.4}.h4,h4{font-size:1.125rem}.h5,h5{font-size:1rem}.h5,.h6,h5,h6{line-height:1.5}.h6,h6{font-size:.875rem}body{font-size:.9rem;line-height:1.6}.container{padding-left:1rem;padding-right:1rem;margin:0}.btn{min-height:44px;min-width:44px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],input[type=url],select,textarea{font-size:16px;min-height:44px;touch-action:manipulation}.grid{grid-template-columns:1fr;gap:.75rem}.flex{flex-direction:column}.flex-row{flex-direction:row;flex-wrap:wrap}.w-full{width:100%}.w-auto{width:auto}.h-auto{height:auto}.h-screen{height:100vh}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-3{margin:.75rem}.m-4{margin:1rem}.m-6{margin:1.5rem}.m-8{margin:2rem}}@media (max-width:480px){.container{padding-left:.75rem;padding-right:.75rem}.h1,h1{font-size:1.5rem}.h2,h2{font-size:1.25rem}.h3,h3{font-size:1.125rem}.p-4{padding:.75rem}.p-6{padding:1rem}.p-8{padding:1.5rem}.m-4{margin:.75rem}.m-6{margin:1rem}.m-8{margin:1.5rem}}@media (max-width:767px){.hide-mobile{display:none!important}.show-mobile{display:block!important}.text-center-mobile{text-align:center!important}.text-left-mobile{text-align:left!important}.text-right-mobile{text-align:right!important}.flex-mobile-col{flex-direction:column!important}.flex-mobile-row{flex-direction:row!important}.flex-mobile-wrap{flex-wrap:wrap!important}.w-mobile-full{width:100%!important}.w-mobile-auto{width:auto!important}.overflow-mobile-hidden{overflow:hidden!important}.overflow-mobile-auto{overflow:auto!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-weight:var(--font-weight-medium);text-decoration:none;border:none;cursor:pointer;transition:all var(--transition-fast);border-radius:var(--radius-lg);font-size:var(--font-size-base);line-height:1;padding:var(--space-3) var(--space-6);position:relative;overflow:hidden;font-family:inherit}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);transition:left .6s ease}.btn:hover:before{left:100%}.btn-wedding-primary{background:var(--gradient-wedding-primary);border:2px solid var(--color-primary);color:var(--white);font-weight:var(--font-weight-bold);box-shadow:var(--shadow-wedding)}.btn-wedding-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-wedding-lg);border-color:var(--primary-700)}.btn-wedding-secondary{background:var(--gradient-wedding-secondary);border:2px solid var(--color-secondary);color:var(--white);font-weight:var(--font-weight-bold);box-shadow:var(--shadow-wedding)}.btn-wedding-secondary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-wedding-lg);border-color:var(--secondary-700)}.btn-card-primary{background:var(--gradient-card-primary);border:2px solid #4f8cff;color:var(--white);font-weight:var(--font-weight-bold);box-shadow:var(--shadow-card)}.btn-card-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-card-lg);border-color:#2563eb}.btn-card-secondary{background:var(--gradient-card-secondary);border:2px solid #2563eb;color:var(--white);font-weight:var(--font-weight-bold);box-shadow:var(--shadow-card)}.btn-card-secondary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-card-lg);border-color:#1e40af}.btn-admin-primary{background:var(--gradient-admin-primary);border:2px solid #f59e0b;color:var(--white);font-weight:var(--font-weight-bold);box-shadow:var(--shadow-lg)}.btn-admin-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-xl);border-color:#d97706}.btn-admin-secondary{background:var(--gradient-admin-secondary);border:2px solid #ef4444;color:var(--white);font-weight:var(--font-weight-bold);box-shadow:var(--shadow-lg)}.btn-admin-secondary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-xl);border-color:#dc2626}.btn-dashboard-primary{background:var(--gradient-dashboard-primary);border:2px solid #8b5cf6;color:var(--white);font-weight:var(--font-weight-bold);box-shadow:var(--shadow-lg)}.btn-dashboard-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-xl);border-color:#7c3aed}.btn-dashboard-secondary{background:var(--gradient-dashboard-secondary);border:2px solid #06b6d4;color:var(--white);font-weight:var(--font-weight-bold);box-shadow:var(--shadow-lg)}.btn-dashboard-secondary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-xl);border-color:#0891b2}.card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);overflow:hidden;transition:all var(--transition-normal);position:relative}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-wedding-primary)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.wedding-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-wedding);border:1px solid var(--color-accent-light);overflow:hidden;transition:all var(--transition-fast);position:relative}.wedding-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-wedding-primary)}.wedding-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-wedding-lg)}.card-collection-card{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);border:1px solid var(--gray-200);overflow:hidden;transition:all var(--transition-fast)}.card-collection-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-lg)}.wedding-form{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-wedding);padding:var(--space-8);border:1px solid var(--color-accent-light)}.wedding-form-group{margin-bottom:var(--space-6)}.wedding-form-label{display:block;font-weight:var(--font-weight-semibold);color:var(--color-accent-neutral);margin-bottom:var(--space-2);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em}.wedding-form-input{width:100%;padding:var(--space-4);border:2px solid var(--color-accent-light);border-radius:var(--radius-lg);font-size:var(--font-size-base);transition:all var(--transition-fast);background:var(--white)}.wedding-form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(139,90,150,.1)}.wedding-form-select{width:100%;padding:var(--space-4);border:2px solid var(--color-accent-light);border-radius:var(--radius-lg);font-size:var(--font-size-base);transition:all var(--transition-fast);background:var(--white);cursor:pointer}.wedding-form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(139,90,150,.1)}.wedding-loading{display:flex;align-items:center;justify-content:center;padding:var(--space-12)}.wedding-spinner{width:40px;height:40px;border:3px solid var(--color-accent-light);border-top:3px solid var(--color-primary);border-radius:50%;animation:wedding-spin 1s linear infinite}@keyframes wedding-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.wedding-message{padding:var(--space-4);border-radius:var(--radius-lg);margin-bottom:var(--space-4);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--space-3)}.wedding-message.success{background:linear-gradient(135deg,#4ade80,#22c55e);color:var(--white);box-shadow:var(--shadow-sm)}.wedding-message.error{background:linear-gradient(135deg,#f87171,#ef4444)}.wedding-message.error,.wedding-message.info{color:var(--white);box-shadow:var(--shadow-sm)}.wedding-message.info{background:linear-gradient(135deg,#60a5fa,#3b82f6)}.form{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);padding:var(--space-8);border:1px solid var(--border-light)}.form-group{margin-bottom:var(--space-6)}.form-label{display:block}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-4);border:2px solid var(--border-light);border-radius:var(--radius-lg);font-size:var(--font-size-base);transition:all var(--transition-fast);background:var(--white);font-family:inherit}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px rgba(139,90,150,.1)}.form-select{cursor:pointer}.form-textarea{min-height:120px}.loading{display:flex;align-items:center;justify-content:center;padding:var(--space-8)}.spinner{width:32px;height:32px;border:3px solid var(--color-accent-light);border-top:3px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.notice{padding:var(--space-4);border-radius:var(--radius-lg);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-3);font-weight:var(--font-weight-medium);box-shadow:var(--shadow-sm)}.notice.success{background:linear-gradient(135deg,#4ade80,#22c55e);color:var(--white)}.notice.error{background:linear-gradient(135deg,#f87171,#ef4444);color:var(--white)}.notice.info{background:linear-gradient(135deg,#60a5fa,#3b82f6);color:var(--white)}.notice.warning{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:var(--white)}.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{padding:var(--space-8);width:90%;position:relative}.modal-close{position:absolute;top:var(--space-4);right:var(--space-4);background:none;font-size:var(--font-size-xl);color:var(--text-muted);transition:color var(--transition-fast);border-radius:var(--radius-full)}.modal-close:hover{color:var(--text-primary);background:var(--gray-100)}.table{width:100%;border-collapse:collapse;background:var(--white);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg)}.table th{background:var(--gradient-wedding-primary);color:var(--white);text-align:left;font-weight:var(--font-weight-bold)}.table td,.table th{padding:var(--space-4)}.table td{border-bottom:1px solid var(--border-light)}.table tr:hover{background:var(--color-accent-light)}.nav{background:var(--white);border-bottom:1px solid var(--border-light);box-shadow:var(--shadow-sm)}.nav-item{padding:var(--space-4) var(--space-6);color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-lg);transition:all var(--transition-fast);font-weight:var(--font-weight-medium)}.nav-item:hover{background:var(--color-accent-light);color:var(--color-primary)}.nav-item.active{background:var(--gradient-wedding-primary);color:var(--white)}.badge{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.badge.success{background:linear-gradient(135deg,#4ade80,#22c55e);color:var(--white)}.badge.error{background:linear-gradient(135deg,#f87171,#ef4444);color:var(--white)}.badge.info{background:linear-gradient(135deg,#60a5fa,#3b82f6);color:var(--white)}.badge.warning{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:var(--white)}.icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-lg);color:var(--white);font-size:var(--font-size-lg);box-shadow:var(--shadow-sm)}.icon.primary{background:var(--gradient-wedding-primary)}.icon.secondary{background:var(--gradient-wedding-secondary)}.icon.card{background:var(--gradient-card-primary)}.icon.admin{background:var(--gradient-admin-primary)}.icon.dashboard{background:var(--gradient-dashboard-primary)}.grid{gap:var(--space-6)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--space-4);line-height:1.2}.subtitle,.title{font-family:var(--font-family-serif);text-align:center}.subtitle{font-size:var(--font-size-xl);color:var(--color-secondary);margin-bottom:var(--space-8);font-weight:var(--font-weight-medium)}.text{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-secondary);margin-bottom:var(--space-4)}.divider{height:2px;background:var(--gradient-wedding-primary);margin:var(--space-8) 0;border-radius:var(--radius-full);position:relative}.divider:before{content:"❦";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--white);padding:0 var(--space-4);color:var(--color-primary);font-size:var(--font-size-lg)}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.title{font-size:var(--font-size-3xl)}.subtitle{font-size:var(--font-size-lg)}.modal-content{padding:var(--space-6);margin:var(--space-4)}.btn{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}}.fade-in{animation:fadeIn .5s ease-out}.slide-in{animation:slideIn .5s ease-out}.scale-in{animation:scaleIn .3s ease-out}.focus-ring,.focus-ring:focus{outline:2px solid var(--primary-500);outline-offset:2px}.hover-lift{transition:transform var(--transition-fast)}.hover-lift:hover{transform:translateY(-2px)}.hover-scale{transition:transform var(--transition-fast)}.hover-scale:hover{transform:scale(1.05)}.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}@media print{.btn,.modal,.nav{display:none!important}.card{box-shadow:none!important;border:1px solid var(--border-light)!important}}@media (max-width:767px){body,html{overflow-x:hidden!important;width:100%!important;max-width:100vw!important}.top-nav{padding:0!important;min-height:60px!important;overflow-x:hidden!important;overflow-y:hidden!important}.nav-container,.top-nav{height:60px!important;width:100%!important;max-width:100%!important}.nav-container{padding:0 1rem!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;overflow:hidden!important}.nav-brand{font-size:1.125rem!important;justify-content:flex-start!important;cursor:pointer!important}.nav-logo{width:36px!important;height:36px!important}.nav-logo i{font-size:20px!important}.nav-brand-text{display:block!important}.desktop-nav-menu,.desktop-nav-right,.nav-dropdown-trigger span,.nav-user-info{display:none!important}.nav-dropdown-menu{min-width:200px!important;right:0!important;left:auto!important}.nav-dropdown-menu.user-dropdown{min-width:240px!important}.mobile-nav-menu{padding-top:60px!important}.card-collection-container{overflow-x:hidden!important;max-width:100vw!important;margin-top:60px!important}.card-collection-container,.multi-select-bar{width:100%!important;box-sizing:border-box!important}.multi-select-bar{max-width:100%!important;flex-direction:column!important;gap:1rem!important;padding:1rem!important;text-align:center!important}.clear-btn,.multi-select-bar span{font-size:1rem!important}.clear-btn{width:100%!important;min-height:44px!important}.card-collection-header{width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:1rem!important;margin:0!important;border-radius:0!important}.header-content{flex-direction:column!important;gap:1.5rem!important;text-align:center!important;width:100%!important}.title-section{order:1!important}.card-collection-title{font-size:1.5rem!important;margin-bottom:.5rem!important;word-wrap:break-word!important;justify-content:center!important}.card-collection-subtitle{font-size:.875rem!important;margin:0!important}.collection-stats{order:2!important;flex-direction:row!important;justify-content:center!important;gap:2rem!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:0 1rem!important}.stat-item{text-align:center!important;flex:1!important;max-width:50%!important;display:flex!important;flex-direction:column!important;gap:.25rem!important}.stat-number{font-size:1.5rem!important;order:1!important}.stat-label,.stat-number{word-wrap:break-word!important}.stat-label{font-size:.75rem!important;order:2!important}.card-collection-actions{order:3!important;flex-direction:column!important;gap:.75rem!important;width:100%!important}.card-collection-actions button{width:100%!important;min-height:48px!important;font-size:1rem!important;padding:.875rem 1rem!important}.filters-section{width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:1rem!important;margin:0!important}.filters-header{gap:1rem!important;width:100%!important}.filters-header-top{flex-direction:column!important;gap:1rem!important;align-items:stretch!important}.filters-title{font-size:1.25rem!important;text-align:center!important}.filters-actions{justify-content:center!important}.filter-action-btn{width:100%!important;min-height:44px!important;font-size:1rem!important}.filters-grid{grid-template-columns:1fr!important;gap:1rem!important}.filter-item,.filters-grid{width:100%!important}.filter-item label{font-size:.875rem!important;margin-bottom:.5rem!important}.filter-item input,.filter-item select{width:100%!important;min-height:44px!important;font-size:16px!important;padding:.75rem!important;box-sizing:border-box!important}.searchable-dropdown{position:relative!important;width:100%!important}.dropdown-options{max-height:200px!important;overflow-y:auto!important;width:100%!important}.dropdown-option{padding:.75rem!important;min-height:44px!important}.card-grid{max-width:100%!important}.card-grid,.card-item{width:100%!important;box-sizing:border-box!important}.card-name{word-wrap:break-word!important}.pagination{flex-direction:column!important;gap:1rem!important;padding:1rem!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}.pagination-info{text-align:center!important;font-size:.875rem!important}.pagination-controls{justify-content:center!important;gap:.25rem!important;padding:0 1rem!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;flex-wrap:nowrap!important}.pagination-btn{min-height:44px!important;min-width:44px!important;font-size:1rem!important;margin:0!important;padding:.75rem!important}}@media (max-width:480px){.card-collection-container{margin-top:60px!important}.card-collection-header{padding:1rem .75rem!important}.card-collection-title{font-size:1.25rem!important}.collection-stats{gap:1.5rem!important}.stat-number{font-size:1.25rem!important}.filters-section{padding:0 .75rem .75rem .75rem!important}.card-grid{padding:.75rem!important;gap:.75rem!important}.card-image{height:180px!important}}@media (max-width:767px){.mtg-decks-container{overflow-x:hidden!important;max-width:100vw!important;margin-top:60px!important}.decks-header,.mtg-decks-container{width:100%!important;box-sizing:border-box!important}.decks-header{max-width:100%!important;padding:1.5rem 1rem!important;margin:0 0 1rem 0!important;border-radius:0!important;flex-direction:column!important;align-items:stretch!important;gap:1.5rem!important}.decks-header .header-content{flex-direction:row!important;gap:1rem!important;text-align:left!important;margin-bottom:0!important;align-items:center!important;justify-content:flex-start!important}.decks-header .header-icon{font-size:2rem!important;flex-shrink:0!important}.decks-header .page-title{font-size:1.5rem!important;margin-bottom:.25rem!important;flex:1!important}.decks-header .page-subtitle{font-size:.875rem!important;margin:0!important}.decks-header .header-stats{display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-rows:auto auto!important;gap:1rem!important;align-items:start!important;width:100%!important}.decks-header .header-stats .delete-deck-header-btn{grid-column:1!important;grid-row:1!important;justify-self:start!important}.decks-header .header-stats .stat-item{grid-column:2!important;grid-row:1!important;justify-self:end!important}.decks-header .header-stats .deck-dropdown-container{grid-column:1/-1!important;grid-row:2!important;width:100%!important}.decks-header .stat-number{font-size:1.5rem!important}.decks-header .stat-label{font-size:.75rem!important}.deck-dropdown-btn,.deck-dropdown-container{width:100%!important}.deck-dropdown-btn{min-height:52px!important;font-size:1.125rem!important;padding:1rem 1.5rem!important}.deck-dropdown{width:100%!important;max-width:100%!important}.create-deck-dropdown-btn{width:100%!important;min-height:48px!important;font-size:1rem!important}.deck-dropdown-item{padding:1rem 1.5rem!important;min-height:48px!important}.deck-name{font-size:1.125rem!important}.deck-date{font-size:.875rem!important}.decks-content{padding:0 1rem 1rem 1rem!important;box-sizing:border-box!important}.deck-details-panel,.decks-content{width:100%!important;max-width:100%!important}.deck-details-panel{border-radius:0!important;overflow:hidden!important}.panel-header{flex-direction:column!important;gap:1rem!important;padding:1.5rem!important;text-align:center!important}.panel-title{font-size:1.5rem!important}.deck-stats-right,.panel-title{justify-content:center!important}.deck-stats-right{flex-direction:row!important;gap:2rem!important}.deck-stats-right .stat-number{font-size:1.75rem!important}.deck-stats-right .stat-label{font-size:.875rem!important}.deck-cards-container{padding:1.5rem!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding-bottom:1.5rem!important;margin:0!important;display:block!important;flex-direction:unset!important;gap:unset!important}.deck-cards-grouped{grid-auto-flow:unset!important;grid-template-columns:unset!important;grid-gap:unset!important;overflow:visible!important}.deck-cards-grouped,.deck-column{display:flex!important;flex-direction:column!important;gap:1.5rem!important;width:100%!important;max-width:100%!important}.deck-column{min-width:unset!important}.card-type-group{padding:1.5rem!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}.card-type-title{font-size:1.25rem!important;margin-bottom:1rem!important}.deck-cards-grid{display:flex!important;flex-direction:column!important;gap:1rem!important}.deck-cards-content,.deck-cards-grid{width:100%!important;max-width:100%!important}.deck-cards-content{flex:1!important;margin:0!important;padding:0!important}.deck-cards-content .card-item.mtg,.deck-cards-content .mtg-card-component{width:100%!important;max-width:100%!important}.deck-cards-content .card-item.mtg{height:auto!important;position:relative!important}.deck-cards-content .card-item-image{width:100%!important;height:auto!important;max-height:350px!important;-o-object-fit:contain!important;object-fit:contain!important;border-radius:8px!important}.deck-cards-content .card-stack{height:calc(310px + var(--max-stack-index, 0)*40px)!important;display:flex!important;justify-content:start!important;align-items:start!important;overflow:visible!important}.deck-cards-content .card-stack,.deck-cards-content .card-stack .card-item{width:100%!important;max-width:100%!important;position:relative!important}.deck-cards-content .card-stack .card-item.stacked{position:absolute!important;transition:all .4s cubic-bezier(.4,0,.2,1)!important;transform-origin:center!important}.deck-cards-content .card-stack .card-item.stacked:not(:first-child){transform:translateY(calc(var(--stack-index, 1)*40px))!important;opacity:1!important}.deck-cards-content .card-stack .card-item-image{width:100%!important;height:auto!important;max-height:350px!important;-o-object-fit:contain!important;object-fit:contain!important}.deck-settings-column{z-index:100!important}.deck-settings-column,.mobile-floating-buttons{position:fixed!important;bottom:1rem!important;right:1rem!important;display:flex!important;flex-direction:column!important;gap:.5rem!important;top:auto!important;left:auto!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important}.mobile-floating-buttons{z-index:1000!important}.add-card-plus-btn{width:56px!important;height:56px!important;border-radius:50%!important;font-size:1.5rem!important;box-shadow:0 4px 12px rgba(0,0,0,.3)!important;order:2!important;background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff!important;border:none!important}.deck-settings-container{order:1!important}.settings-cog-btn{width:48px!important;height:48px!important;border-radius:50%!important;font-size:1.25rem!important;box-shadow:0 4px 12px rgba(0,0,0,.3)!important;background:#374151!important;color:#fff!important;border:none!important}.settings-dropdown{position:absolute!important;bottom:100%!important;right:0!important;margin-bottom:.5rem!important;background:#fff!important;border-radius:8px!important;box-shadow:0 4px 12px rgba(0,0,0,.15)!important;min-width:200px!important}.settings-dropdown-btn{width:100%!important;padding:.75rem 1rem!important;min-height:44px!important;font-size:1rem!important;text-align:left!important}.delete-deck-header-btn{position:static!important;width:48px!important;height:48px!important;border-radius:50%!important;font-size:1.25rem!important;box-shadow:0 4px 12px rgba(0,0,0,.3)!important;background:#ef4444!important;color:#fff!important;border:none!important}.empty-deck{padding:2rem 1rem!important;text-align:center!important;width:100%!important}.empty-deck h4{font-size:1.25rem!important;margin-bottom:.5rem!important}.empty-deck p{font-size:.875rem!important;margin-bottom:1rem!important}.add-first-card-btn{width:100%!important;min-height:48px!important;font-size:1rem!important;padding:.875rem 1rem!important}.loading-container{padding:2rem 1rem!important;text-align:center!important}.loading-spinner{font-size:2rem!important;margin-bottom:1rem!important}.no-deck-selected{padding:2rem 1rem!important;text-align:center!important}.no-deck-content,.no-deck-selected{width:100%!important}.no-deck-content h3{font-size:1.25rem!important;margin-bottom:.5rem!important}.no-deck-content p{font-size:.875rem!important}}@media (max-width:480px){.mtg-decks-container{margin-top:60px!important}.decks-header{padding:1rem .75rem!important}.decks-header .page-title{font-size:1.25rem!important}.deck-stats-right{gap:1.5rem!important}.deck-stats-right .stat-number{font-size:1.25rem!important}.decks-content{padding:0 .75rem .75rem .75rem!important}.deck-cards-content .card-item-image{max-height:250px!important}.add-card-plus-btn{width:52px!important;height:52px!important;font-size:1.5rem!important}.delete-deck-header-btn,.settings-cog-btn{width:48px!important;height:48px!important;font-size:1.25rem!important}}@media (max-width:767px){.camera-video{height:250px!important}.scan-frame{width:160px!important;height:224px!important}.card-preview{flex-direction:column!important;align-items:center!important;text-align:center!important}.scan-instructions{font-size:.8rem!important;margin:.5rem 0!important}.camera-controls{flex-direction:column!important;gap:.75rem!important}.scan-btn{width:100%!important;max-width:200px!important}.result-header{flex-direction:column!important;gap:1rem!important;align-items:stretch!important}.scan-again-btn{align-self:center!important}}@media (min-width:768px){.h1,h1{font-size:2.5rem;line-height:1.1}.h2,h2{font-size:2rem;line-height:1.2}.h3,h3{font-size:1.75rem;line-height:1.3}.h4,h4{font-size:1.5rem;line-height:1.4}.h5,h5{font-size:1.25rem}.h5,.h6,h5,h6{line-height:1.5}.h6,body,h6{font-size:1rem}body{line-height:1.6}.btn{padding:.875rem 1.5rem;font-size:1rem;border-radius:.5rem;min-height:40px}.btn-sm{padding:.625rem 1rem;font-size:.875rem;min-height:32px}.btn-lg{padding:1.125rem 2rem;font-size:1.125rem;min-height:48px}.form-input,.form-select,.form-textarea{padding:.875rem;font-size:1rem;border-radius:.5rem;min-height:40px}.card{padding:1.5rem;border-radius:.75rem;margin-bottom:1rem}.nav{padding:1rem}.nav-item{margin-bottom:0;margin-right:1rem}.modal{padding:2rem}.modal-content{border-radius:.75rem;margin:0;max-width:600px}.modal-body,.modal-footer,.modal-header{padding:1.5rem}.grid{gap:1.5rem}.flex{flex-direction:row}.flex-col{flex-direction:column}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-3{margin:.75rem}.m-4{margin:1rem}.m-6{margin:1.5rem}.m-8{margin:2rem}.w-full{width:100%}.w-auto{width:auto}.h-auto{height:auto}.h-screen{height:100vh}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}}@media (min-width:992px){.h1,h1{font-size:3rem}.h2,h2{font-size:2.5rem}.h3,h3{font-size:2rem}.container{max-width:1200px}.card{padding:2rem;border-radius:1rem}.modal-content{max-width:800px}.modal-body,.modal-footer,.modal-header{padding:2rem}.grid{gap:2rem}}@media (min-width:1200px){.h1,h1{font-size:3.5rem}.h2,h2{font-size:3rem}.h3,h3{font-size:2.25rem}.container{max-width:1400px}.p-8{padding:3rem}.m-8{margin:3rem}.card{padding:2.5rem;border-radius:1.25rem}.modal-content{max-width:1000px}.modal-body,.modal-footer,.modal-header{padding:2.5rem}}@media (min-width:768px){.desktop-nav{display:flex}.mobile-menu-toggle,.mobile-nav{display:none}.sidebar{position:static;width:auto;height:auto;transform:none}.sidebar-overlay{display:none}.top-nav{padding:1rem 2rem;height:80px}.nav-menu{display:flex;flex-direction:row;position:static;background:none;box-shadow:none}.nav-item,.nav-menu{border:none;padding:0}.nav-item{margin:0 1rem}.card-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.card{min-height:250px}.card-image{height:150px}.card-title{font-size:1rem;line-height:1.4}.card-text{font-size:.9rem;line-height:1.5}.filter-section{flex-direction:row;gap:1rem}.filter-item{width:auto}.search-input{width:300px;margin-bottom:0}.deck-cards-container{grid-template-columns:50px 1fr;gap:1.5rem;padding:2rem}.deck-settings-column{position:static;flex-direction:column;gap:1rem}.deck-settings-container{position:relative}.settings-dropdown{position:absolute;top:100%;left:0;margin-top:.5rem}.card-stack{margin:.5rem}.card-stack-image{width:80px;height:112px}.deck-stats{flex-direction:row;gap:1rem;text-align:left}.stat-item{font-size:1rem}.admin-container{padding:2rem}.admin-header{flex-direction:row;gap:2rem;text-align:left}.admin-actions{flex-direction:row;gap:1rem}.users-grid{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem}.user-card{padding:1.5rem}.user-card-header{flex-direction:row;gap:1rem;text-align:left}.form-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.form-actions{flex-direction:row;gap:1rem}.form-actions .btn{width:auto}.wedding-container{padding:2rem}.wedding-header{text-align:left;padding:2rem 0}.wedding-title{font-size:2.5rem}.guest-form{padding:2rem}.form-section{margin-bottom:1.5rem}.rsvp-section{padding:2rem}.rsvp-options{flex-direction:row;gap:1rem}.venue-info{padding:2rem}.venue-map{height:400px}.dashboard-container{padding:2rem}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.dashboard-card{padding:1.5rem}.dashboard-stats{flex-direction:row;gap:1rem;text-align:left}.chart-container{height:300px}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.1)}.card:hover{transform:translateY(-2px);box-shadow:0 8px 16px rgba(0,0,0,.1)}.nav-item:hover{color:var(--primary-600)}.form-input:focus,.form-select:focus,.form-textarea:focus{box-shadow:0 0 0 3px rgba(59,130,246,.1)}.btn,.card,.form-input,.form-select,.form-textarea,.nav-item{transition:all .2s ease-in-out}.btn:hover,.card:hover{transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.container{padding-left:2rem;padding-right:2rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-6{grid-template-columns:repeat(6,1fr)}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.btn,.card,.modal-content{will-change:transform}.modal-body,.sidebar{scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9}}@media (min-width:768px){.modal-body::-webkit-scrollbar,.sidebar::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track,.sidebar::-webkit-scrollbar-track{background:#f1f5f9}.modal-body::-webkit-scrollbar-thumb,.sidebar::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.modal-body::-webkit-scrollbar-thumb:hover,.sidebar::-webkit-scrollbar-thumb:hover{background:#94a3b8}}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}.grid{display:grid;gap:1rem}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.m-0{margin:0}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-3{margin:.75rem}.m-4{margin:1rem}.m-6{margin:1.5rem}.m-8{margin:2rem}.w-full{width:100%}.w-auto{width:auto}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-2\/3{width:66.666667%}.w-1\/4{width:25%}.w-3\/4{width:75%}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.hidden{display:none}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}@media (max-width:767px){.top-nav{padding:0!important;min-height:60px!important}.nav-container,.top-nav{width:100%!important;max-width:100%!important;height:60px!important}.nav-container{padding:0 1rem!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important}.nav-brand{font-size:1.125rem!important;justify-content:flex-start!important;cursor:pointer!important}.nav-logo{width:36px!important;height:36px!important}.nav-logo i{font-size:20px!important}.nav-brand-text{display:block!important}.desktop-nav-menu,.desktop-nav-right,.nav-dropdown-trigger span,.nav-user-info{display:none!important}.nav-dropdown-menu{min-width:200px!important;right:0!important;left:auto!important}.nav-dropdown-menu.user-dropdown{min-width:240px!important}}@media (max-width:480px){.nav-container{padding:0 .75rem!important}.nav-logo{width:32px!important;height:32px!important}.nav-logo i{font-size:18px!important}.nav-brand{font-size:1rem!important}}@media (max-width:767px){.card-grid{grid-template-columns:1fr!important;gap:1rem!important;padding:1rem!important}.card-item{max-width:100%!important;margin:0!important}.card-image{height:200px!important}.collection-header{flex-direction:column!important;gap:1rem!important;padding:1rem!important}.collection-title{font-size:1.5rem!important;text-align:center!important}.collection-actions{flex-direction:column!important;gap:.5rem!important;width:100%!important}.collection-actions button{width:100%!important;min-height:44px!important}.search-controls{flex-direction:column!important;gap:1rem!important;padding:1rem!important}.search-input{width:100%!important;min-height:44px!important}.filter-controls{flex-direction:column!important;gap:.5rem!important;width:100%!important}.filter-select{width:100%!important;min-height:44px!important}.card-modal{width:95%!important;max-width:95%!important;margin:1rem!important;max-height:90vh!important}.card-modal-content{flex-direction:column!important;gap:1rem!important}.card-modal-image{width:100%!important;height:200px!important}.card-modal-details{width:100%!important;padding:1rem!important}.deck-grid{grid-template-columns:1fr!important;gap:1rem!important;padding:1rem!important}.deck-item{max-width:100%!important}.deck-actions{flex-direction:column!important;gap:.5rem!important}.deck-actions button{width:100%!important;min-height:44px!important}.form-group{margin-bottom:1rem!important}.form-control{width:100%!important;min-height:44px!important;font-size:16px!important}.form-label{font-size:.875rem!important;margin-bottom:.5rem!important}.btn{min-height:44px!important;font-size:16px!important;padding:.75rem 1rem!important}.btn-sm{min-height:40px!important;padding:.5rem .75rem!important}.modal{padding:1rem!important}.modal-content{width:100%!important;max-width:100%!important;margin:0!important;border-radius:.5rem!important}.modal-body,.modal-footer,.modal-header{padding:1rem!important}.modal-footer{flex-direction:column!important;gap:.5rem!important}.modal-footer button{width:100%!important;min-height:44px!important}}@media (max-width:480px){.card-grid{gap:.75rem!important}.card-grid,.collection-header,.search-controls{padding:.75rem!important}.card-modal{width:100%!important;max-width:100%!important;margin:0!important;border-radius:0!important;height:100vh!important;max-height:100vh!important}.modal{padding:.5rem!important}.modal-content{border-radius:.25rem!important}}@media (min-width:640px){.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}}@media (min-width:768px){.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}}@media (min-width:1024px){.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}}@media (min-width:1280px){.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}}@media (min-width:640px){.sm\:hidden{display:none}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:inline{display:inline}.sm\:inline-block{display:inline-block}.sm\:inline-flex{display:inline-flex}}@media (min-width:768px){.md\:hidden{display:none}.md\:block{display:block}.md\:flex{display:flex}.md\:inline{display:inline}.md\:inline-block{display:inline-block}.md\:inline-flex{display:inline-flex}}@media (min-width:1024px){.lg\:hidden{display:none}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:inline{display:inline}.lg\:inline-block{display:inline-block}.lg\:inline-flex{display:inline-flex}}@media (min-width:1280px){.xl\:hidden{display:none}.xl\:block{display:block}.xl\:flex{display:flex}.xl\:inline{display:inline}.xl\:inline-block{display:inline-block}.xl\:inline-flex{display:inline-flex}}@media (min-width:640px){.sm\:text-left{text-align:left}.sm\:text-center{text-align:center}.sm\:text-right{text-align:right}.sm\:text-sm{font-size:.875rem}.sm\:text-base{font-size:1rem}.sm\:text-lg{font-size:1.125rem}.sm\:text-xl{font-size:1.25rem}.sm\:text-2xl{font-size:1.5rem}}@media (min-width:768px){.md\:text-left{text-align:left}.md\:text-center{text-align:center}.md\:text-right{text-align:right}.md\:text-sm{font-size:.875rem}.md\:text-base{font-size:1rem}.md\:text-lg{font-size:1.125rem}.md\:text-xl{font-size:1.25rem}.md\:text-2xl{font-size:1.5rem}}@media (min-width:1024px){.lg\:text-left{text-align:left}.lg\:text-center{text-align:center}.lg\:text-right{text-align:right}.lg\:text-sm{font-size:.875rem}.lg\:text-base{font-size:1rem}.lg\:text-lg{font-size:1.125rem}.lg\:text-xl{font-size:1.25rem}.lg\:text-2xl{font-size:1.5rem}}@media (min-width:1280px){.xl\:text-left{text-align:left}.xl\:text-center{text-align:center}.xl\:text-right{text-align:right}.xl\:text-sm{font-size:.875rem}.xl\:text-base{font-size:1rem}.xl\:text-lg{font-size:1.125rem}.xl\:text-xl{font-size:1.25rem}.xl\:text-2xl{font-size:1.5rem}}@media (min-width:640px){.sm\:p-0{padding:0}.sm\:p-1{padding:.25rem}.sm\:p-2{padding:.5rem}.sm\:p-3{padding:.75rem}.sm\:p-4{padding:1rem}.sm\:p-6{padding:1.5rem}.sm\:p-8{padding:2rem}.sm\:m-0{margin:0}.sm\:m-1{margin:.25rem}.sm\:m-2{margin:.5rem}.sm\:m-3{margin:.75rem}.sm\:m-4{margin:1rem}.sm\:m-6{margin:1.5rem}.sm\:m-8{margin:2rem}}@media (min-width:768px){.md\:p-0{padding:0}.md\:p-1{padding:.25rem}.md\:p-2{padding:.5rem}.md\:p-3{padding:.75rem}.md\:p-4{padding:1rem}.md\:p-6{padding:1.5rem}.md\:p-8{padding:2rem}.md\:m-0{margin:0}.md\:m-1{margin:.25rem}.md\:m-2{margin:.5rem}.md\:m-3{margin:.75rem}.md\:m-4{margin:1rem}.md\:m-6{margin:1.5rem}.md\:m-8{margin:2rem}}@media (min-width:1024px){.lg\:p-0{padding:0}.lg\:p-1{padding:.25rem}.lg\:p-2{padding:.5rem}.lg\:p-3{padding:.75rem}.lg\:p-4{padding:1rem}.lg\:p-6{padding:1.5rem}.lg\:p-8{padding:2rem}.lg\:m-0{margin:0}.lg\:m-1{margin:.25rem}.lg\:m-2{margin:.5rem}.lg\:m-3{margin:.75rem}.lg\:m-4{margin:1rem}.lg\:m-6{margin:1.5rem}.lg\:m-8{margin:2rem}}@media (min-width:1280px){.xl\:p-0{padding:0}.xl\:p-1{padding:.25rem}.xl\:p-2{padding:.5rem}.xl\:p-3{padding:.75rem}.xl\:p-4{padding:1rem}.xl\:p-6{padding:1.5rem}.xl\:p-8{padding:2rem}.xl\:m-0{margin:0}.xl\:m-1{margin:.25rem}.xl\:m-2{margin:.5rem}.xl\:m-3{margin:.75rem}.xl\:m-4{margin:1rem}.xl\:m-6{margin:1.5rem}.xl\:m-8{margin:2rem}}@media (min-width:640px){.sm\:w-full{width:100%}.sm\:w-auto{width:auto}.sm\:w-1\/2{width:50%}.sm\:w-1\/3{width:33.333333%}.sm\:w-2\/3{width:66.666667%}.sm\:w-1\/4{width:25%}.sm\:w-3\/4{width:75%}}@media (min-width:768px){.md\:w-full{width:100%}.md\:w-auto{width:auto}.md\:w-1\/2{width:50%}.md\:w-1\/3{width:33.333333%}.md\:w-2\/3{width:66.666667%}.md\:w-1\/4{width:25%}.md\:w-3\/4{width:75%}}@media (min-width:1024px){.lg\:w-full{width:100%}.lg\:w-auto{width:auto}.lg\:w-1\/2{width:50%}.lg\:w-1\/3{width:33.333333%}.lg\:w-2\/3{width:66.666667%}.lg\:w-1\/4{width:25%}.lg\:w-3\/4{width:75%}}@media (min-width:1280px){.xl\:w-full{width:100%}.xl\:w-auto{width:auto}.xl\:w-1\/2{width:50%}.xl\:w-1\/3{width:33.333333%}.xl\:w-2\/3{width:66.666667%}.xl\:w-1\/4{width:25%}.xl\:w-3\/4{width:75%}}@media (min-width:640px){.sm\:flex{display:flex}.sm\:flex-col{flex-direction:column}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:flex-nowrap{flex-wrap:nowrap}}@media (min-width:768px){.md\:flex{display:flex}.md\:flex-col{flex-direction:column}.md\:flex-row{flex-direction:row}.md\:flex-wrap{flex-wrap:wrap}.md\:flex-nowrap{flex-wrap:nowrap}}@media (min-width:1024px){.lg\:flex{display:flex}.lg\:flex-col{flex-direction:column}.lg\:flex-row{flex-direction:row}.lg\:flex-wrap{flex-wrap:wrap}.lg\:flex-nowrap{flex-wrap:nowrap}}@media (min-width:1280px){.xl\:flex{display:flex}.xl\:flex-col{flex-direction:column}.xl\:flex-row{flex-direction:row}.xl\:flex-wrap{flex-wrap:wrap}.xl\:flex-nowrap{flex-wrap:nowrap}}@media (max-width:767px){.mobile-nav-menu{padding-top:60px!important}}#app{min-height:100vh;background:linear-gradient(135deg,var(--gray-50) 0,var(--gray-100) 100%)}.toast-notification{position:fixed;top:var(--space-6);right:var(--space-6);z-index:var(--z-toast);max-width:400px;animation:toastSlideIn .4s cubic-bezier(.68,-.55,.265,1.55)}.toast-content{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);border:1px solid var(--warning-200);padding:var(--space-4) var(--space-6);display:flex;align-items:center;gap:var(--space-3);position:relative;overflow:hidden}.toast-content:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--warning-500) 0,var(--warning-600) 100%)}.toast-icon{color:var(--warning-600);font-size:var(--font-size-xl);flex-shrink:0}.toast-text{color:var(--text-primary);font-weight:var(--font-weight-medium);line-height:var(--line-height-relaxed);flex:1}.toast-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-md);transition:all var(--transition-fast);flex-shrink:0}.toast-close:hover{background-color:var(--gray-100);color:var(--text-primary)}@keyframes toastSlideIn{0%{transform:translateX(100%) scale(.8);opacity:0}to{transform:translateX(0) scale(1);opacity:1}}@media (max-width:768px){.toast-notification{top:var(--space-4);right:var(--space-4);left:var(--space-4);max-width:none}.toast-content{padding:var(--space-3) var(--space-4)}}.top-nav{background:var(--white);border-bottom:1px solid var(--border-light);box-shadow:var(--shadow-lg);position:fixed;top:0;left:0;right:0;z-index:998;height:72px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.95)}.nav-container{max-width:1400px;margin:0 auto;padding:0 var(--space-6);height:100%;justify-content:space-between;position:relative}.nav-container,.nav-left{display:flex;align-items:center}.nav-left{gap:var(--space-8)}.nav-brand{display:flex;align-items:center;gap:var(--space-3);text-decoration:none;color:var(--text-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-xl);transition:all var(--transition-fast);background:none;border:none;cursor:pointer;padding:0}.nav-brand:hover{color:var(--color-primary);transform:translateY(-1px)}.nav-logo{width:60px;height:60px;background:linear-gradient(135deg,var(--color-secondary) 0,var(--primary-700) 100%);border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:all var(--transition-fast)}.nav-logo:hover{transform:scale(1.05);box-shadow:var(--shadow-xl)}.nav-logo i{font-size:50px;color:var(--white)}.nav-brand-text{display:block}.nav-brand-fixed{position:relative;z-index:1002;flex-shrink:0}.nav-brand-floating{position:fixed;top:var(--space-4);left:var(--space-4);z-index:998;background:var(--white);padding:var(--space-2);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);gap:var(--space-3);cursor:pointer;transition:all var(--transition-fast)}.nav-brand-floating,.nav-title{display:flex;align-items:center}.nav-title{flex:1;justify-content:center;text-align:center;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);padding:0 var(--space-4)}.nav-title span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-right-spacer{width:200px;flex-shrink:0}@media (max-width:768px){.nav-right-spacer{width:120px}.nav-title{font-size:var(--font-size-lg);padding:0 var(--space-2)}}.mobile-menu-toggle{display:none!important;flex-direction:column;justify-content:space-around;width:32px;height:32px;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001}.hamburger-line{width:100%;height:3px;background:var(--text-primary);border-radius:2px;transition:all .3s ease;transform-origin:center}.mobile-menu-toggle.active .hamburger-line:first-child{transform:rotate(45deg) translate(8px,8px)}.mobile-menu-toggle.active .hamburger-line:nth-child(2){opacity:0;transform:scale(0)}.mobile-menu-toggle.active .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(8px,-8px)}.mobile-nav-overlay{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;background:rgba(0,0,0,.5);z-index:999;opacity:0;animation:fadeIn .3s ease forwards;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.mobile-nav-menu{position:fixed;top:0;left:-100%;width:85%;max-width:350px;height:100vh;min-height:100vh;max-height:100vh;background:var(--white);box-shadow:4px 0 12px rgba(0,0,0,.15);z-index:1000;transition:left .3s ease;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;transform:translateZ(0);padding-top:var(--space-4)}.mobile-nav-menu.active{left:0}body.mobile-menu-open{overflow:hidden;position:fixed;width:100%}.mobile-nav-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border-light);background:var(--bg-secondary)}.mobile-nav-user{display:flex;align-items:center;gap:.75rem}.mobile-nav-avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold);font-size:1.125rem;color:var(--text-primary)}.mobile-nav-user-info{display:flex;flex-direction:column;gap:.25rem}.mobile-nav-user-name{font-weight:var(--font-weight-semibold);color:var(--text-primary);font-size:1rem}.mobile-nav-user-role{font-size:.875rem;color:var(--text-secondary)}.mobile-nav-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:50%;transition:all .2s ease;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center}.mobile-nav-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.mobile-nav-content{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1rem 0}.mobile-nav-section{margin-bottom:1.5rem}.mobile-nav-section-title{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;padding:0 1rem .5rem;border-bottom:1px solid var(--border-light);margin-bottom:.5rem}.mobile-nav-section-title i{font-size:1rem}.mobile-nav-links{display:flex;flex-direction:column}.mobile-nav-link{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;color:var(--text-primary);text-decoration:none;font-size:1rem;transition:all .2s ease;border:none;background:none;width:100%;text-align:left;cursor:pointer;min-height:48px}.mobile-nav-link:hover{background:var(--bg-secondary);color:var(--color-primary)}.mobile-nav-link i{font-size:1.25rem;width:24px;text-align:center}.mobile-nav-link span{font-weight:var(--font-weight-medium)}.mobile-nav-footer{flex-shrink:0;padding:1rem;border-top:1px solid var(--border-light);background:var(--bg-secondary);display:flex;flex-direction:column;gap:.5rem}.mobile-nav-footer-btn{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:var(--white);border:1px solid var(--border-light);border-radius:8px;color:var(--text-primary);font-size:1rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;text-decoration:none;justify-content:center;min-height:48px}.mobile-nav-footer-btn:hover{background:var(--bg-tertiary);border-color:var(--border-medium)}.mobile-nav-footer-btn.logout{background:var(--error-50);border-color:var(--error-200);color:var(--error-700)}.mobile-nav-footer-btn.logout:hover{background:var(--error-100);border-color:var(--error-300)}.mobile-nav-footer-btn i{font-size:1.25rem}.desktop-nav-menu,.nav-menu{display:flex;align-items:center;gap:var(--space-2)}.desktop-nav-right{display:flex;align-items:center;gap:var(--space-4)}.wedding-trigger{background:var(--gradient-wedding-primary)!important;border:2px solid var(--color-primary);color:#fff!important;font-weight:var(--font-weight-bold);font-size:var(--font-size-base);padding:var(--space-3) var(--space-5);box-shadow:var(--shadow-wedding);position:relative;overflow:hidden;transition:all var(--transition-fast);border-radius:var(--radius-xl)}.wedding-trigger:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.15),transparent);transition:left .5s ease}.wedding-trigger:hover:before{left:100%}.wedding-trigger:hover{background:linear-gradient(135deg,var(--primary-700) 0,var(--color-primary) 100%);border-color:var(--primary-700);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-wedding-lg)}.wedding-icon{width:36px;height:36px;background:var(--gradient-wedding-primary);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:var(--white);font-size:var(--font-size-xl);box-shadow:var(--shadow-md);transition:all var(--transition-fast);animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1);box-shadow:var(--shadow-md)}50%{transform:scale(1.05);box-shadow:var(--shadow-lg)}}.wedding-prominent{order:-1;margin-right:var(--space-4)}.wedding-prominent .wedding-trigger{min-width:200px}.nav-dropdown{position:relative}.nav-dropdown-trigger{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:none;border:none;color:var(--text-secondary);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.nav-dropdown-trigger:hover{background-color:var(--gray-100);color:var(--text-primary);transform:translateY(-1px)}.nav-dropdown-trigger.admin-trigger{color:var(--color-highlight)}.nav-dropdown-trigger.admin-trigger:hover{background-color:hsla(0,100%,71%,.1);color:var(--color-highlight)}.dropdown-arrow{font-size:var(--font-size-sm);transition:transform var(--transition-fast)}.dropdown-arrow.rotated{transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:calc(100% + var(--space-2));left:0;min-width:220px;background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);border:1px solid var(--border-light);padding:var(--space-2);z-index:var(--z-dropdown);animation:dropdownSlideIn .2s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.95)}.nav-dropdown-menu.wedding-menu{min-width:240px;background:var(--gradient-wedding-primary);border:1px solid var(--color-primary);box-shadow:var(--shadow-wedding-lg)}.wedding-menu-section{padding:var(--space-2) 0;border-bottom:1px solid rgba(108,63,180,.2)}.wedding-menu-section:last-child{border-bottom:none}.wedding-menu .nav-dropdown-item{color:#fff;font-weight:var(--font-weight-medium);border-radius:var(--radius-lg);margin:var(--space-1) 0;transition:all var(--transition-fast)}.wedding-menu .nav-dropdown-item:hover{background:linear-gradient(135deg,var(--primary-400) 0,var(--color-primary) 100%);color:#fff;transform:translateX(4px);box-shadow:var(--shadow-sm)}.wedding-menu .nav-dropdown-item i{color:var(--color-accent-light);font-size:var(--font-size-lg)}.nav-dropdown-menu.user-dropdown{right:0;left:auto;min-width:280px}.nav-dropdown-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-light);margin-bottom:var(--space-2)}.nav-dropdown-avatar{width:48px;height:48px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-lg);color:var(--white);box-shadow:var(--shadow-sm);background:var(--gradient-wedding-primary)}.nav-dropdown-user-info{flex:1;min-width:0}.nav-dropdown-user-name{display:block;font-weight:var(--font-weight-semibold);color:var(--text-primary);font-size:var(--font-size-sm);margin-bottom:var(--space-1)}.nav-dropdown-user-role{display:block;color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.nav-dropdown-divider{height:1px;background-color:var(--border-light);margin:var(--space-2) 0}.nav-dropdown-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:none;border:none;color:var(--text-primary);text-decoration:none;font-size:var(--font-size-sm);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.nav-dropdown-item:hover{background-color:var(--gray-100);color:var(--text-primary);transform:translateX(4px)}.nav-dropdown-item i{font-size:var(--font-size-lg);color:var(--text-muted);width:20px;text-align:center}.nav-right{gap:var(--space-4)}.nav-right,.nav-user{display:flex;align-items:center}.nav-user{gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-fast);position:relative}.nav-user:hover{background-color:var(--gray-100);transform:translateY(-1px)}.nav-avatar{width:40px;height:40px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--white);box-shadow:var(--shadow-sm);background:var(--gradient-wedding-primary)}.nav-user-info{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.nav-user-name{font-weight:var(--font-weight-semibold);color:var(--text-primary);font-size:var(--font-size-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.nav-user-role{color:var(--text-muted);font-size:var(--font-size-xs)}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.card-collection-trigger{background:var(--gradient-card-primary)!important;border:2px solid #4f8cff;color:#fff!important;font-weight:var(--font-weight-bold);font-size:var(--font-size-base);padding:var(--space-3) var(--space-5);box-shadow:var(--shadow-card);position:relative;overflow:hidden;transition:all var(--transition-fast);border-radius:var(--radius-xl)}.card-collection-trigger:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.15),transparent);transition:left .5s ease}.card-collection-trigger:hover:before{left:100%}.card-collection-trigger:hover{background:linear-gradient(135deg,#2563eb,#4f8cff);border-color:#2563eb;color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-card-lg)}.card-collection-icon{width:36px;height:36px;background:var(--gradient-card-primary);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:var(--white);font-size:var(--font-size-xl);box-shadow:var(--shadow-md);transition:all var(--transition-fast);animation:pulse 2s infinite}.card-collection-menu{background:linear-gradient(135deg,#f0f7ff,#e6f3ff);border:1px solid #b3d9ff;box-shadow:var(--shadow-card-lg)}.shared-collections-trigger{background:linear-gradient(135deg,#10b981,#059669)!important;border:2px solid #10b981;color:#fff!important;font-weight:var(--font-weight-bold);font-size:var(--font-size-base);padding:var(--space-3) var(--space-5);box-shadow:0 4px 15px rgba(16,185,129,.3);position:relative;overflow:hidden;transition:all var(--transition-fast);border-radius:var(--radius-xl)}.shared-collections-trigger:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.15),transparent);transition:left .5s ease}.shared-collections-trigger:hover:before{left:100%}.shared-collections-trigger:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(16,185,129,.4);border-color:#047857}.shared-collections-icon{width:36px;height:36px;background:hsla(0,0%,100%,.2);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-right:var(--space-2);animation:pulse 2s infinite}.shared-collections-icon i{font-size:var(--font-size-xl);color:var(--white)}.shared-collections-menu{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #10b981;box-shadow:0 4px 15px rgba(16,185,129,.2)}.shared-collection-item{color:var(--text-primary)!important;border-left:3px solid transparent;transition:all var(--transition-fast)}.shared-collection-item:hover{background:rgba(16,185,129,.1)!important;border-left-color:#10b981;color:#047857!important}.shared-collection-item i{color:#10b981!important;margin-right:var(--space-2)}.nav-buttons{gap:var(--space-3)}.nav-button,.nav-buttons{display:flex;align-items:center}.nav-button{gap:var(--space-2);padding:var(--space-3) var(--space-4);background:none;border:2px solid transparent;color:var(--text-secondary);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);text-decoration:none;white-space:nowrap}.nav-button:hover{background-color:var(--gray-100);color:var(--text-primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.nav-button.wedding-button{background:var(--gradient-wedding-primary);border-color:var(--color-primary);color:#fff;font-weight:var(--font-weight-bold);box-shadow:var(--shadow-wedding)}.nav-button.wedding-button:hover{background:linear-gradient(135deg,var(--primary-700) 0,var(--color-primary) 100%);border-color:var(--primary-700);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-wedding-lg)}.nav-button.card-collection-button{background:var(--gradient-card-primary);border-color:#4f8cff;color:#fff;font-weight:var(--font-weight-bold);box-shadow:var(--shadow-card)}.nav-button.card-collection-button:hover{background:linear-gradient(135deg,#2563eb,#4f8cff);border-color:#2563eb;color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-card-lg)}.nav-button i{font-size:var(--font-size-lg);width:20px;text-align:center}.nav-button.wedding-button i{color:var(--color-accent-light)}.nav-button.card-collection-button i{color:hsla(0,0%,100%,.9)}.mtg-parent-label{font-weight:var(--font-weight-bold);color:var(--text-primary);padding:.5rem 1.5rem .25rem 2.5rem;cursor:default;display:flex;align-items:start;gap:.5rem;opacity:.85;white-space:nowrap;justify-content:flex-start;text-align:left;font-size:var(--font-size-sm)}.mtg-child{padding-left:3.5rem!important}.pokemon-parent-label{font-weight:var(--font-weight-bold);color:var(--text-primary);padding:.5rem 1.5rem .25rem 2.5rem;cursor:default;display:flex;align-items:start;gap:.5rem;opacity:.85;white-space:nowrap;justify-content:flex-start;text-align:left;font-size:var(--font-size-sm)}.pokemon-child{padding-left:3.5rem!important}.nav-brand.desktop-only{display:flex}.nav-brand.mobile-only{display:none}@media (max-width:1024px){.nav-container{padding:0 var(--space-4)}.nav-left{gap:var(--space-6)}.nav-brand.desktop-only{display:none!important}.nav-brand.mobile-only{display:flex!important}.desktop-nav-menu,.desktop-nav-right{display:none!important}}@media (max-width:1200px) and (min-width:1025px){.nav-container{padding:0 var(--space-4)}.nav-left{gap:var(--space-4)}.nav-brand-text{font-size:var(--font-size-lg)}.nav-logo{width:52px;height:52px}.nav-logo i{font-size:44px}.nav-dropdown-trigger{padding:var(--space-2) var(--space-3)}.nav-dropdown-trigger,.nav-dropdown-trigger span{font-size:var(--font-size-xs)}.card-collection-trigger,.shared-collections-trigger,.wedding-trigger{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.card-collection-icon,.shared-collections-icon,.wedding-icon{width:32px;height:32px;font-size:var(--font-size-lg)}.nav-button{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}.nav-user{gap:var(--space-2);padding:var(--space-1) var(--space-2)}.nav-avatar{width:36px;height:36px}.nav-avatar,.nav-user-name{font-size:var(--font-size-xs)}.nav-user-name{max-width:100px}.nav-user-role{font-size:var(--font-size-xs)}.nav-dropdown-menu{min-width:200px}.nav-dropdown-menu.user-dropdown{min-width:260px}}@media (max-width:768px){.top-nav{height:64px}.nav-container{padding:0 var(--space-3)}.nav-left{gap:var(--space-4)}.nav-dropdown-trigger span,.nav-user-info{display:none}.nav-dropdown-menu{min-width:200px}.nav-dropdown-menu.user-dropdown{min-width:240px}.wedding-prominent .wedding-trigger{min-width:auto;padding:var(--space-2) var(--space-3)}.nav-buttons{gap:var(--space-2)}.nav-button{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}}@media (max-width:1024px) and (min-width:769px){.nav-container{padding:0 var(--space-3)}.nav-left{gap:var(--space-3)}.nav-brand-text{font-size:var(--font-size-base)}.nav-logo{width:48px;height:48px}.nav-logo i{font-size:40px}.nav-dropdown-trigger{padding:var(--space-2) var(--space-3)}.nav-dropdown-trigger,.nav-dropdown-trigger span{font-size:var(--font-size-xs)}.card-collection-trigger,.shared-collections-trigger,.wedding-trigger{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}.card-collection-icon,.shared-collections-icon,.wedding-icon{width:28px;height:28px;font-size:var(--font-size-base)}.nav-button{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}.nav-user{gap:var(--space-2);padding:var(--space-1) var(--space-2)}.nav-avatar{width:32px;height:32px}.nav-avatar,.nav-user-name{font-size:var(--font-size-xs)}.nav-user-name{max-width:80px}.nav-user-role{font-size:var(--font-size-xs)}.nav-dropdown-menu{min-width:180px}.nav-dropdown-menu.user-dropdown{min-width:220px}}@media (max-width:480px){.nav-left{gap:var(--space-2)}.nav-logo{width:48px;height:48px}.nav-logo i{font-size:40px}.card-collection-icon,.wedding-icon{width:32px;height:32px;font-size:var(--font-size-lg)}}@media (max-width:768px) and (min-width:481px){.nav-container{padding:0 var(--space-2)}.nav-left{gap:var(--space-2)}.nav-brand-text{font-size:var(--font-size-sm)}.nav-logo{width:44px;height:44px}.nav-logo i{font-size:36px}.nav-dropdown-trigger{padding:var(--space-1) var(--space-2)}.nav-dropdown-trigger,.nav-dropdown-trigger span{font-size:var(--font-size-xs)}.card-collection-trigger,.shared-collections-trigger,.wedding-trigger{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.card-collection-icon,.shared-collections-icon,.wedding-icon{width:24px;height:24px;font-size:var(--font-size-sm)}.nav-button{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.nav-user{gap:var(--space-1);padding:var(--space-1)}.nav-avatar{width:28px;height:28px}.nav-avatar,.nav-user-name{font-size:var(--font-size-xs)}.nav-user-name{max-width:60px}.nav-user-role{font-size:var(--font-size-xs)}.nav-dropdown-menu{min-width:160px}.nav-dropdown-menu.user-dropdown{min-width:200px}}.trident-icon{transform:rotate(-45deg);display:inline-block}.bride-party-container,.groom-party-container,.guest-info-container,.house-guest-container,.qna-container,.rsvp-container,.venue-container,.wedding-menu-container{min-height:100vh;background:linear-gradient(135deg,var(--color-accent-light) 0,var(--gray-100) 100%);padding-top:72px;position:relative;overflow-x:hidden}.bride-party-container:before,.groom-party-container:before,.guest-info-container:before,.house-guest-container:before,.qna-container:before,.rsvp-container:before,.venue-container:before,.wedding-menu-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:var(--pattern-hearts);opacity:.3;pointer-events:none}.bride-party-content,.groom-party-content,.guest-info-content,.house-guest-content,.qna-content,.rsvp-content,.venue-content,.wedding-menu-content{max-width:1400px;margin:0 auto;padding:var(--space-8) var(--space-6);position:relative;z-index:1}.bride-party-header,.groom-party-header,.guest-info-header,.qna-header,.rsvp-header,.venue-header,.wedding-menu-header{margin-bottom:var(--space-8);background:var(--white);padding:var(--space-6);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light)}.bride-party-welcome,.groom-party-welcome,.guest-info-welcome,.qna-welcome,.rsvp-welcome,.venue-welcome,.wedding-menu-welcome{display:flex;align-items:center;gap:var(--space-6)}.bride-party-icon,.groom-party-icon,.guest-info-icon,.qna-icon,.rsvp-icon,.venue-icon,.wedding-menu-icon{width:80px;height:80px;border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:all var(--transition-fast)}.bride-party-icon,.groom-party-icon,.guest-info-icon,.qna-icon,.rsvp-icon,.venue-icon,.wedding-menu-icon{background:var(--color-secondary)}.bride-party-icon:hover,.groom-party-icon:hover,.guest-info-icon:hover,.qna-icon:hover,.rsvp-icon:hover,.venue-icon:hover,.wedding-menu-icon:hover{transform:scale(1.05);box-shadow:var(--shadow-xl)}.bride-party-icon i,.groom-party-icon i,.guest-info-icon i,.qna-icon i,.rsvp-icon i,.venue-icon i,.wedding-menu-icon i{font-size:var(--font-size-3xl);color:var(--white)}.bride-party-title,.groom-party-title,.guest-info-title,.qna-title,.rsvp-title,.venue-title,.wedding-menu-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--space-2);font-family:var(--font-family-serif)}.bride-party-subtitle,.groom-party-subtitle,.guest-info-subtitle,.qna-subtitle,.rsvp-subtitle,.venue-subtitle,.wedding-menu-subtitle{color:var(--text-secondary);font-size:var(--font-size-lg);margin:0;line-height:var(--line-height-relaxed)}.bride-party-card,.groom-party-card,.qna-card,.rsvp-card,.venue-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);overflow:hidden;transition:all var(--transition-normal);position:relative}.bride-party-card:before,.groom-party-card:before,.qna-card:before,.rsvp-card:before,.venue-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-wedding-primary)}.bride-party-card:hover,.groom-party-card:hover,.qna-card:hover,.rsvp-card:hover,.venue-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.venue-info{padding:var(--space-8);background:linear-gradient(135deg,var(--primary-50) 0,var(--primary-100) 100%)}.venue-name{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin-bottom:var(--space-4);font-family:var(--font-family-serif)}.venue-description{color:var(--text-secondary);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin-bottom:var(--space-6)}.venue-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.feature-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);transition:all var(--transition-fast)}.feature-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.feature-item i{font-size:var(--font-size-xl);color:var(--color-primary);width:24px;text-align:center}.feature-item span{font-weight:var(--font-weight-medium);color:var(--text-primary)}.venue-iframe-container{height:600px;position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg)}.venue-iframe{width:100%;height:100%;border:none;background:var(--white)}.bride-party-card,.groom-party-card{box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.bride-party-card:hover,.groom-party-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-6);border-bottom:1px solid var(--border-light)}.bride-party-card .card-header{background:linear-gradient(135deg,var(--secondary-50) 0,var(--secondary-100) 100%)}.groom-party-card .card-header{background:linear-gradient(135deg,var(--primary-50) 0,var(--primary-100) 100%)}.card-header i{font-size:var(--font-size-xl);width:24px;text-align:center}.bride-party-card .card-header i{color:var(--secondary-600)}.groom-party-card .card-header i{color:var(--primary-600)}.card-header h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.bride-party-card .card-header h3{color:var(--secondary-800)}.groom-party-card .card-header h3{color:var(--primary-800)}.card-content{padding:var(--space-6)}.schedule-item{transition:all var(--transition-fast)}.schedule-item:hover{background:var(--gray-50);padding-left:var(--space-2);border-radius:var(--radius-lg)}.time{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.bride-party-card .time{color:var(--secondary-600)}.groom-party-card .time{color:var(--primary-600)}.event{font-weight:var(--font-weight-medium)}.card-content p,.event{color:var(--text-primary)}.card-content p{margin:var(--space-2) 0;line-height:var(--line-height-relaxed)}.card-content ul{margin:var(--space-3) 0;padding-left:var(--space-4)}.card-content li{margin:var(--space-2) 0;color:var(--text-primary);line-height:var(--line-height-relaxed)}.qna-info{padding:var(--space-8);background:linear-gradient(135deg,var(--primary-50) 0,var(--primary-100) 100%)}.qna-name{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--primary-800);margin-bottom:var(--space-4);font-family:var(--font-family-serif)}.qna-description{color:var(--text-secondary);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin-bottom:var(--space-6)}.qna-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.qna-features .feature-item i{color:var(--primary-600)}.qna-placeholder{padding:var(--space-12);display:flex;align-items:center;justify-content:center;min-height:400px;background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light)}.placeholder-content{text-align:center;max-width:400px}.placeholder-icon{font-size:var(--font-size-4xl);margin-bottom:var(--space-4)}.bride-party-placeholder .placeholder-icon{color:var(--secondary-400)}.groom-party-placeholder .placeholder-icon,.qna-placeholder .placeholder-icon{color:var(--primary-400)}.placeholder-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-3)}.placeholder-text{color:var(--text-secondary);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed)}.guest-sections{display:flex;flex-direction:column;gap:var(--space-6)}.guest-section-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);overflow:hidden;transition:all var(--transition-normal);position:relative}.guest-section-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-wedding-primary)}.guest-section-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px)}.section-header{display:flex;align-items:center;gap:1.5rem;padding:2rem;background:var(--white);border-radius:1.5rem 1.5rem 0 0;box-shadow:var(--shadow-lg);border:1px solid var(--border-light);position:relative;overflow:hidden;cursor:pointer;transition:all var(--transition-normal)}.section-header:before{content:"";position:absolute;top:0;left:0;right:0;height:4px}.guest-section-card:first-child .section-header:before{background:var(--gradient-admin-primary)}.guest-section-card:nth-child(2) .section-header:before{background:var(--gradient-dashboard-primary)}.guest-section-card:nth-child(3) .section-header:before{background:var(--gradient-wedding-primary)}.guest-section-card:first-child .section-icon{background:var(--gradient-admin-primary);box-shadow:0 8px 32px rgba(245,158,11,.3)}.guest-section-card:nth-child(2) .section-icon{background:var(--gradient-dashboard-primary);box-shadow:0 8px 32px rgba(139,92,246,.3)}.guest-section-card:nth-child(3) .section-icon{background:var(--color-secondary);box-shadow:var(--shadow-wedding-icon)}.section-header:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.section-header-content{display:flex;align-items:center;gap:1.5rem;flex:1}.section-icon{width:80px;height:80px;border-radius:1rem;display:flex;align-items:center;justify-content:center;color:var(--white);font-size:1.875rem;box-shadow:var(--shadow-lg);position:relative;z-index:1;transition:all var(--transition-fast)}.section-icon:hover{transform:scale(1.05)}.section-text{flex:1}.section-title{font-size:1.875rem;color:var(--text-primary);margin:0 0 .5rem 0;line-height:1.2}.section-subtitle{color:var(--text-secondary);font-size:1.125rem;margin:0;line-height:1.5}.collapse-btn{background:var(--gray-100);border:1px solid var(--border-light);border-radius:var(--radius-lg);width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.collapse-btn:hover{background:var(--gray-200);transform:scale(1.05)}.collapse-btn i{font-size:1.125rem;color:var(--text-secondary);transition:transform var(--transition-fast);transform:rotate(180deg)}.collapse-btn.collapsed i{transform:rotate(0deg)}.section-content{background:var(--white);border-radius:0 0 var(--radius-xl) var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-md);border:1px solid var(--border-light);border-top:none;transition:all var(--transition-normal);overflow:hidden}.section-content.collapsed{max-height:0;padding:0 var(--space-6);opacity:0}.no-access-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);padding:var(--space-8);text-align:center;margin:var(--space-8) 0;position:relative}.no-access-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px}.no-access-card:before,.no-access-icon{background:var(--gradient-wedding-primary)}.no-access-icon{width:80px;height:80px;border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-6);box-shadow:var(--shadow-lg);transition:all var(--transition-fast)}.no-access-icon:hover{transform:scale(1.05);box-shadow:var(--shadow-xl)}.no-access-icon i{font-size:var(--font-size-3xl);color:var(--white)}.no-access-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--space-4);font-family:var(--font-family-serif)}.no-access-text{color:var(--text-secondary);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin:0}@media (max-width:768px){.bride-party-content,.groom-party-content,.qna-content,.venue-content{padding:var(--space-6) var(--space-4)}.bride-party-welcome,.groom-party-welcome,.qna-welcome,.venue-welcome{flex-direction:column;text-align:center;gap:var(--space-4)}.bride-party-icon,.groom-party-icon,.qna-icon,.venue-icon{width:60px;height:60px}.bride-party-icon i,.bride-party-title,.groom-party-icon i,.groom-party-title,.qna-icon i,.qna-title,.venue-icon i,.venue-title{font-size:var(--font-size-2xl)}.qna-info,.venue-info{padding:var(--space-6)}.qna-features,.venue-features{grid-template-columns:1fr}.venue-iframe-container{height:400px}.bride-party-grid,.groom-party-grid{grid-template-columns:1fr}.schedule-item{flex-direction:column;align-items:flex-start;gap:var(--space-1)}.qna-placeholder{padding:var(--space-8);min-height:300px}.guest-info-content{padding:var(--space-6) var(--space-4)}.guest-info-welcome{flex-direction:column;text-align:center;gap:var(--space-4)}.guest-info-icon{width:60px;height:60px}.guest-info-icon i,.guest-info-title{font-size:var(--font-size-2xl)}.guest-info-subtitle{font-size:var(--font-size-xs)}.guest-sections{gap:var(--space-4)}.section-header{padding:var(--space-4)}.section-header-content{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.section-icon{width:40px;height:40px}.section-icon,.section-title{font-size:var(--font-size-lg)}.section-subtitle{font-size:var(--font-size-xs)}}.bride-party-card,.groom-party-card,.qna-card,.rsvp-card,.venue-card{animation:fadeIn .5s ease-out}.guest-section-card{animation:slideIn .3s ease-out}.feature-item{animation:scaleIn .3s ease-out}.bride-party-card:focus-within,.groom-party-card:focus-within,.qna-card:focus-within,.rsvp-card:focus-within,.venue-card:focus-within{outline:2px solid var(--primary-500);outline-offset:2px}.guest-section-card:focus-within{outline:2px solid var(--primary-500);outline-offset:2px}@media print{.bride-party-container:before,.groom-party-container:before,.guest-info-container:before,.house-guest-container:before,.qna-container:before,.rsvp-container:before,.venue-container:before,.wedding-menu-container:before{display:none}.bride-party-card,.groom-party-card,.guest-section-card,.qna-card,.rsvp-card,.venue-card{box-shadow:none!important;border:1px solid var(--border-light)!important}}.wedding-info-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);margin-bottom:var(--space-6);overflow:hidden;transition:all var(--transition-normal);position:relative}.wedding-info-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-wedding-primary);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}.wedding-info-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.wedding-info-card .card-header{background:linear-gradient(135deg,var(--gray-50) 0,var(--white) 100%);padding:var(--space-6);border-bottom:1px solid var(--border-light);display:flex;align-items:center;gap:var(--space-4)}.wedding-info-card .card-icon{width:48px;height:48px;border-radius:var(--radius-xl);background:var(--color-secondary);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.wedding-info-card .card-icon:hover{transform:scale(1.05);box-shadow:var(--shadow-md)}.wedding-info-card .card-icon i{color:var(--white);font-size:var(--font-size-xl)}.wedding-info-card .card-text{flex:1}.wedding-info-card .card-title{font-family:var(--font-family-serif);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--space-1) 0;line-height:var(--line-height-tight)}.wedding-info-card .card-subtitle{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0;line-height:var(--line-height-normal)}.wedding-info-card .card-content{padding:var(--space-6)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6)}.info-item{background:linear-gradient(135deg,var(--gray-50) 0,var(--white) 100%);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--space-4);transition:all var(--transition-fast)}.info-item:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.info-label{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-2);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em}.info-label i{color:var(--primary-600);width:16px;text-align:center}.info-value{font-size:var(--font-size-lg);color:var(--text-primary);font-weight:var(--font-weight-medium)}.detail-value{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.btn-edit{background:var(--gray-100);color:var(--text-secondary);border:1px solid var(--border-light);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);transition:all var(--transition-fast)}.btn-edit:hover{background:var(--primary-50);color:var(--primary-600);border-color:var(--primary-200)}.inline-edit{display:flex;align-items:center;gap:var(--space-2)}.inline-edit .form-input{flex:1;font-size:var(--font-size-base);padding:var(--space-2) var(--space-3)}.inline-actions{display:flex;gap:var(--space-1)}.inline-actions .btn{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.schedule-schedule{margin-top:var(--space-4)}.schedule-item{gap:var(--space-4);padding:var(--space-4)}.schedule-time{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--font-weight-semibold);color:var(--primary-600);min-width:120px}.schedule-time i{font-size:var(--font-size-lg)}.schedule-content{flex:1}.schedule-event{font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.schedule-description{font-size:var(--font-size-sm);color:var(--text-secondary)}.schedule-delete-btn{background:var(--error-50);color:var(--error-600);border:1px solid var(--error-200);padding:var(--space-2);border-radius:var(--radius-md);transition:all var(--transition-fast)}.schedule-delete-btn:hover{background:var(--error-100);color:var(--error-700);border-color:var(--error-300)}.no-schedules{text-align:center;padding:var(--space-8);color:var(--text-secondary)}.no-schedules i{font-size:var(--font-size-3xl);margin-bottom:var(--space-4);opacity:.5}.admin-schedule-form{background:linear-gradient(135deg,var(--primary-50) 0,var(--white) 100%);border:1px solid var(--primary-200);border-radius:var(--radius-xl);padding:var(--space-4);margin-bottom:var(--space-4)}.admin-schedule-form h4{font-family:var(--font-family-serif);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--space-3) 0}.schedule-form{display:flex;gap:var(--space-3);align-items:flex-end}.schedule-time-input{flex:0 0 120px}.schedule-name-input{flex:1}.loading-section{text-align:center;padding:var(--space-8)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-light);border-top:3px solid var(--primary-500);border-radius:50%;margin:0 auto var(--space-4)}.error-notice i{font-size:var(--font-size-lg)}@media (max-width:768px){.info-grid{grid-template-columns:1fr;gap:var(--space-4)}.wedding-info-card .card-header{flex-direction:column;text-align:center;gap:var(--space-3)}.wedding-info-card .card-icon{width:40px;height:40px}.wedding-info-card .card-title{font-size:var(--font-size-xl)}.schedule-item{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.schedule-time{min-width:auto}.schedule-form{flex-direction:column;gap:var(--space-2)}.schedule-name-input,.schedule-time-input{flex:none}.inline-edit{flex-direction:column;align-items:stretch;gap:var(--space-2)}.inline-actions{justify-content:center}}.guest-info-header{margin-bottom:var(--space-8);background:var(--white);padding:var(--space-6);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light)}.guest-info-welcome{display:flex;align-items:center;gap:var(--space-6)}.guest-info-icon{width:80px;height:80px;border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:all var(--transition-fast);background:var(--gradient-wedding-primary)}.guest-info-icon:hover{transform:scale(1.05);box-shadow:var(--shadow-xl)}.guest-info-icon i{color:var(--white);font-size:var(--font-size-3xl)}.guest-info-text{flex:1}.guest-info-title{font-family:var(--font-family-serif);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--space-2) 0;line-height:var(--line-height-tight)}.guest-info-subtitle{color:var(--text-secondary);font-size:var(--font-size-lg);margin:0;line-height:var(--line-height-relaxed)}@media (max-width:768px){.guest-info-welcome{flex-direction:column;text-align:center;gap:var(--space-4)}.guest-info-icon{width:60px;height:60px}.guest-info-icon i,.guest-info-title{font-size:var(--font-size-2xl)}}.rsvp-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);overflow:hidden;transition:all var(--transition-normal);position:relative}.rsvp-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-wedding-accent);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}.rsvp-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.rsvp-card-header{background:linear-gradient(135deg,var(--gray-50) 0,var(--white) 100%);padding:var(--space-6);border-bottom:1px solid var(--border-light)}.rsvp-guest-info{display:flex;align-items:center;gap:var(--space-4)}.guest-avatar{width:60px;height:60px;border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.guest-avatar i{font-size:var(--font-size-xl)}.guest-details{flex:1}.guest-name{font-family:var(--font-family-serif);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold)}.guest-status{display:flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.guest-status.responded{color:var(--success-600)}.rsvp-response-display{padding:var(--space-6);text-align:center}.response-status{justify-content:center;gap:var(--space-2);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-4);padding:var(--space-4);border-radius:var(--radius-xl)}.response-status.attending{background:linear-gradient(135deg,var(--success-50) 0,var(--success-100) 100%);color:var(--success-700);border:1px solid var(--success-200)}.response-status.not-attending{background:linear-gradient(135deg,var(--error-50) 0,var(--error-100) 100%);color:var(--error-700);border:1px solid var(--error-200)}.response-message{color:var(--text-secondary);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin-bottom:var(--space-6)}.rsvp-form{padding:var(--space-6)}.rsvp-invitation{text-align:center}.invitation-header{margin-bottom:var(--space-6)}.invitation-title{font-family:var(--font-family-serif);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--space-2) 0}.invitation-subtitle{color:var(--text-secondary);font-size:var(--font-size-lg);margin:0;line-height:var(--line-height-relaxed)}.rsvp-deadline-notice{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);margin:var(--space-4) 0;background:var(--white);border:2px solid var(--primary-400);border-radius:var(--border-radius-md);color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);box-shadow:var(--shadow-sm)}.rsvp-deadline-notice i{font-size:var(--font-size-lg);color:var(--primary-500)}.wedding-divider{height:2px;background:linear-gradient(90deg,transparent 0,var(--primary-300) 50%,transparent 100%);margin:var(--space-6) 0}.rsvp-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.rsvp-option{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-6);border:2px solid var(--border-light);border-radius:var(--radius-xl);background:var(--white);cursor:pointer;transition:all var(--transition-fast);position:relative;overflow:hidden}.rsvp-option:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--primary-50) 0,var(--white) 100%);opacity:0;transition:opacity var(--transition-fast)}.rsvp-option:hover:before{opacity:1}.rsvp-option.selected{border-color:var(--primary-500);background:linear-gradient(135deg,var(--primary-50) 0,var(--white) 100%);box-shadow:var(--shadow-md)}.rsvp-option.attending.selected{border-color:var(--success-500);background:linear-gradient(135deg,var(--success-50) 0,var(--white) 100%)}.rsvp-option.not-attending.selected{border-color:var(--error-500);background:linear-gradient(135deg,var(--error-50) 0,var(--white) 100%)}.option-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm);position:relative;z-index:1}.option-icon,.rsvp-option.attending .option-icon,.rsvp-option.not-attending .option-icon{background:var(--color-secondary)}.option-icon i{color:var(--white);font-size:var(--font-size-xl)}.option-content{flex:1;text-align:left;z-index:1}.option-content h4{font-family:var(--font-family-serif);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--space-1) 0}.option-content p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0;line-height:var(--line-height-normal)}.option-check{width:24px;height:24px;border-radius:50%;background:var(--gray-200);display:flex;align-items:center;justify-content:center;position:relative;z-index:1;transition:all var(--transition-fast)}.rsvp-option.selected .option-check{background:var(--primary-500)}.rsvp-option.attending.selected .option-check{background:var(--success-500)}.rsvp-option.not-attending.selected .option-check{background:var(--error-500)}.option-check i{color:var(--white);font-size:var(--font-size-sm);opacity:0;transition:opacity var(--transition-fast)}.rsvp-option.selected .option-check i{opacity:1}.rsvp-submit{text-align:center;margin-top:var(--space-6)}.success-notice{margin-bottom:var(--space-4)}.success-notice i{font-size:var(--font-size-lg)}@media (max-width:768px){.rsvp-options{grid-template-columns:1fr}.rsvp-option{flex-direction:column;gap:var(--space-3)}.option-content,.rsvp-guest-info,.rsvp-option{text-align:center}.rsvp-guest-info{flex-direction:column;gap:var(--space-3)}.guest-avatar{width:50px;height:50px}.guest-name{font-size:var(--font-size-xl)}}.vimeo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--space-6)}.vimeo-item{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);overflow:hidden;transition:all var(--transition-normal)}.vimeo-item:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px)}.room-info{padding:var(--space-6)}.room-info h4{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.room-info p{color:var(--text-secondary);font-size:var(--font-size-base);margin-bottom:var(--space-4)}.guests-list{display:flex;flex-direction:column;gap:var(--space-2)}.guest-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3);background:var(--gray-50);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.guest-name{font-weight:var(--font-weight-medium)}.no-guests{text-align:center;padding:var(--space-4);color:var(--text-muted);background:var(--gray-50);border-radius:var(--radius-lg);border:2px dashed var(--border-light)}.no-guests i{font-size:var(--font-size-2xl);margin-bottom:var(--space-2);display:block;color:var(--text-muted)}.no-guests p{margin:0;font-size:var(--font-size-sm)}@media (max-width:768px){.vimeo-grid{grid-template-columns:1fr;gap:var(--space-4)}}.venue-hero{padding:0 var(--space-6);min-height:580px;display:flex;align-items:flex-start;justify-content:center;text-align:center;margin-bottom:var(--space-8);position:relative;overflow:hidden}.venue-hero-background{background-size:cover;background-position:50%;background-repeat:no-repeat;opacity:.9;z-index:0}.venue-hero-background,.venue-hero:before{position:absolute;top:0;left:0;right:0;bottom:0}.venue-hero:before{content:"";background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cpattern id='a' x='0' y='0' width='20' height='20' patternUnits='userSpaceOnUse'%3E%3Cpath d='M10 6.5C8.5 5 6.5 5 5 6.5s-1.5 3.5 0 5l5 5 5-5c1.5-1.5 1.5-3.5 0-5s-3.5-1.5-5 0z' fill='%23FFF' opacity='.1'/%3E%3C/pattern%3E%3C/defs%3E%3Cpath fill='url(%23a)' d='M0 0h100v100H0z'/%3E%3C/svg%3E");opacity:.3;pointer-events:none}.venue-hero-content{max-width:800px;margin:0 auto;position:relative;z-index:1}.venue-hero .venue-icon{width:80px;height:80px;background:hsla(0,0%,100%,.2);border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-6);font-size:var(--font-size-3xl);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.3)}.venue-hero .venue-title{font-weight:var(--font-weight-bold);margin-bottom:var(--space-3);color:var(--white);font-family:var(--font-family-serif);line-height:var(--line-height-tight)}.venue-hero .venue-subtitle{font-size:var(--font-size-xl);opacity:.9;margin:0;line-height:var(--line-height-relaxed)}.venue-address-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);padding:var(--space-8);margin-bottom:var(--space-8);border:2px solid var(--color-primary);position:relative;overflow:hidden}.venue-address-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-wedding-primary)}.address-content{gap:var(--space-6)}.address-content,.address-icon{display:flex;align-items:center}.address-icon{width:64px;height:64px;background:var(--color-secondary);border-radius:var(--radius-xl);justify-content:center;font-size:var(--font-size-2xl);color:var(--white);flex-shrink:0;box-shadow:var(--shadow-md)}.address-details{flex:1}.address-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--space-2);font-family:var(--font-family-serif)}.address-text{font-size:var(--font-size-lg);color:var(--text-secondary);font-weight:var(--font-weight-medium);line-height:var(--line-height-relaxed);display:flex;align-items:center;gap:var(--space-2)}.address-text,.address-text-wrapper{margin-bottom:var(--space-4)}.address-text-wrapper .address-text{margin-bottom:0}.btn-edit-inline{background:transparent;color:var(--text-secondary);border:1px solid transparent;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-sm);transition:all var(--transition-fast);opacity:.6;margin-left:var(--space-2)}.btn-edit-inline:hover{opacity:1;background:var(--gray-100);color:var(--color-primary);border-color:var(--border-light)}.inline-edit-wrapper{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.inline-edit-wrapper .date-input{flex:1;max-width:250px}.contact-info{display:flex;gap:var(--space-6);flex-wrap:wrap}.contact-item{display:flex;align-items:center;gap:var(--space-2);color:var(--color-primary);font-weight:var(--font-weight-medium)}.contact-item i{font-size:var(--font-size-lg)}.venue-features-grid{display:flex;flex-wrap:wrap;gap:var(--space-6);margin-bottom:var(--space-8);justify-content:center}.venue-features-grid .feature-card{flex:0 0 400px;max-width:400px}.feature-card{background:var(--white);border-radius:var(--radius-2xl);padding:var(--space-6);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);transition:all var(--transition-normal);position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary) 0,var(--color-secondary) 100%)}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.feature-icon{width:56px;height:56px;background:var(--color-secondary);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:var(--white);margin-bottom:var(--space-4);box-shadow:var(--shadow-sm)}.feature-icon,.feature-title{font-size:var(--font-size-xl)}.feature-title{font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--space-3);font-family:var(--font-family-serif)}.feature-description{color:var(--text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}.feature-highlights{display:flex;flex-direction:column;gap:var(--space-2)}.highlight{color:var(--color-primary);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.gallery-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);text-align:center;font-family:var(--font-family-serif)}.gallery-title,.venue-gallery{margin-bottom:var(--space-8)}.gallery-section{margin-bottom:var(--space-12)}.section-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary);text-align:center;margin-bottom:var(--space-6);position:relative;font-family:var(--font-family-serif)}.section-title:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);width:60px;height:3px;background:linear-gradient(90deg,var(--color-primary) 0,var(--color-secondary) 100%);border-radius:var(--radius-full)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6)}.gallery-item{background:var(--white);border-radius:var(--radius-2xl);overflow:hidden;box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.gallery-item.featured{grid-column:1/-1;max-width:600px;margin:0 auto}.gallery-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.gallery-image{width:100%;height:250px;-o-object-fit:cover;object-fit:cover;display:block}.gallery-item.featured .gallery-image{height:350px}.gallery-caption{padding:var(--space-4);text-align:center;font-weight:var(--font-weight-semibold);color:var(--text-primary);background:var(--white)}@media (max-width:768px){.venue-hero{padding:var(--space-12) var(--space-4)}.venue-hero .venue-title{font-size:var(--font-size-4xl)}.address-content{flex-direction:column;text-align:center}.contact-info{justify-content:center}.gallery-grid,.venue-features-grid{grid-template-columns:1fr}.gallery-item.featured{grid-column:1;max-width:none}.gallery-image{height:200px}.gallery-item.featured .gallery-image{height:250px}}.bride-party-container,.groom-party-container,.wedding-menu-container{min-height:100vh;background:var(--gradient-wedding);padding-top:72px;position:relative;overflow-x:hidden}.bride-party-container:before,.groom-party-container:before,.wedding-menu-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 80%,hsla(0,0%,100%,.1) 0,transparent 50%),radial-gradient(circle at 80% 20%,hsla(0,0%,100%,.1) 0,transparent 50%),radial-gradient(circle at 40% 40%,hsla(0,0%,100%,.05) 0,transparent 50%);pointer-events:none;z-index:0}.bride-party-content,.groom-party-content,.wedding-menu-content{position:relative;z-index:1;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.bride-party-header,.groom-party-header,.wedding-menu-header{background:var(--white);padding:var(--space-6);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);margin-bottom:var(--space-8);position:relative;z-index:1}.bride-party-welcome,.groom-party-welcome,.wedding-menu-welcome{display:flex;align-items:center;gap:var(--space-4)}.bride-party-icon,.groom-party-icon,.wedding-menu-icon{width:60px;height:60px;border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;background:var(--color-secondary);color:var(--white);font-size:var(--text-2xl);transition:all var(--transition-fast)}.bride-party-icon:hover,.groom-party-icon:hover,.wedding-menu-icon:hover{transform:scale(1.05);box-shadow:var(--shadow-lg)}.bride-party-icon i,.groom-party-icon i,.wedding-menu-icon i{font-size:var(--text-xl)}.bride-party-text,.groom-party-text,.wedding-menu-text{flex:1}.bride-party-title,.groom-party-title,.wedding-menu-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-2) 0;background:var(--gradient-wedding-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.bride-party-subtitle,.groom-party-subtitle,.wedding-menu-subtitle{font-size:var(--text-lg);color:var(--text-secondary);margin:0;line-height:var(--line-height-relaxed)}.bride-party-grid,.groom-party-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--space-6);margin-bottom:var(--space-8)}.bride-party-card,.groom-party-card{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-wedding);border:1px solid var(--border-light);overflow:hidden;transition:all var(--transition-fast);position:relative}.bride-party-card:before,.groom-party-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-wedding-accent);opacity:0;transition:opacity var(--transition-fast)}.bride-party-card:hover,.groom-party-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2xl)}.bride-party-card:hover:before,.groom-party-card:hover:before{opacity:1}.bride-party-card .card-header,.groom-party-card .card-header{background:var(--gradient-wedding-subtle);padding:var(--space-4);border-bottom:1px solid var(--border-light);display:flex;align-items:center;gap:var(--space-3)}.bride-party-card .card-header i,.groom-party-card .card-header i{font-size:var(--text-xl);color:var(--accent-wedding)}.bride-party-card .card-header h3,.groom-party-card .card-header h3{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.bride-party-card .card-content,.groom-party-card .card-content{padding:var(--space-4)}.schedule-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0;border-bottom:1px solid var(--border-light)}.schedule-item:last-child{border-bottom:none}.schedule-item .time{font-weight:var(--font-semibold);color:var(--accent-wedding);font-size:var(--text-sm)}.schedule-item .event{color:var(--text-primary);font-size:var(--text-sm)}.cabin-video-card,.salon-video-card{grid-column:1/-1}.video-container{margin-bottom:var(--space-4);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.cabin-video,.salon-video{width:100%;border-radius:var(--radius-lg)}.cabin-info,.salon-info{background:var(--gradient-wedding-subtle);padding:var(--space-4);border-radius:var(--radius-lg);margin-top:var(--space-4)}.cabin-info h4,.salon-info h4{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0 0 var(--space-3) 0}.cabin-description,.salon-description{color:var(--text-secondary);line-height:var(--line-height-relaxed)}.cabin-description ul,.salon-description ul{margin:var(--space-3) 0;padding-left:var(--space-4)}.cabin-description li,.salon-description li{margin-bottom:var(--space-2)}.wedding-menu-content{padding-bottom:var(--space-8)}.admin-section{margin-bottom:var(--space-8)}.admin-header{gap:var(--space-4)}.admin-header-icon{width:50px;height:50px;border-radius:var(--radius-lg);background:var(--gradient-admin);color:var(--white);font-size:var(--text-xl)}.admin-header-title{font-size:var(--text-2xl);font-weight:var(--font-bold);margin:0 0 var(--space-2) 0}.admin-header-subtitle{font-size:var(--text-base);margin:0}.admin-card{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-wedding);border:1px solid var(--border-light);margin-bottom:var(--space-6);overflow:hidden}.admin-card-header{background:var(--gradient-wedding-subtle);padding:var(--space-4);border-bottom:1px solid var(--border-light);display:flex;align-items:center;gap:var(--space-3)}.admin-card-icon{width:40px;height:40px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;background:var(--color-secondary);color:var(--white);font-size:var(--text-lg)}.admin-card-text{flex:1}.admin-card-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--space-1) 0}.admin-card-subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.add-food-form{padding:var(--space-4);display:grid;grid-template-columns:1fr 1fr auto;gap:var(--space-4);align-items:end}.form-label{font-size:var(--text-sm);font-weight:var(--font-medium)}.form-input,.form-select{border:1px solid var(--border-light);font-size:var(--text-base)}.form-input:focus,.form-select:focus{border-color:var(--color-primary);box-shadow:var(--shadow-wedding-focus)}.menu-management{padding:var(--space-4)}.category-section{margin-bottom:var(--space-6)}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-light)}.category-info{display:flex;align-items:center;gap:var(--space-2)}.category-info i{color:var(--accent-wedding);font-size:var(--text-lg)}.category-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.item-count{font-size:var(--text-sm);color:var(--text-secondary);background:var(--gradient-wedding-subtle);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md)}.food-items{display:flex;flex-direction:column;gap:var(--space-2)}.food-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3);background:var(--gradient-wedding-subtle);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.item-name{font-weight:var(--font-medium);color:var(--text-primary)}.no-items{text-align:center;padding:var(--space-6);color:var(--text-secondary)}.no-items i{font-size:var(--text-2xl);margin-bottom:var(--space-2);opacity:.5}.guest-choices{padding:var(--space-4);display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-4)}.guest-choice-card{background:var(--gradient-wedding-subtle);border-radius:var(--radius-lg);padding:var(--space-4);border:1px solid var(--border-light)}.guest-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-light)}.guest-header i{color:var(--accent-wedding);font-size:var(--text-lg)}.choices{flex-direction:column}.choice,.choices{display:flex;gap:var(--space-2)}.choice{align-items:center;font-size:var(--text-sm);color:var(--text-secondary)}.choice i{color:var(--accent-wedding);font-size:var(--text-base)}.choice strong{color:var(--text-primary);font-weight:var(--font-medium)}.no-data{text-align:center;padding:var(--space-6);color:var(--text-secondary)}.no-data i{font-size:var(--text-2xl);margin-bottom:var(--space-2);opacity:.5}.user-section{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);overflow:hidden}.menu-display{padding:var(--space-6)}.selection-status{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--gradient-wedding-subtle);color:var(--text-secondary)}.selection-status.selected{background:var(--gradient-success);color:var(--white)}.selection-status.readonly{background:var(--gradient-muted);color:var(--text-muted)}.selection-status i{font-size:var(--text-base)}.food-options{display:flex;flex-direction:column;gap:var(--space-2)}.food-option{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--gradient-wedding-subtle);border-radius:var(--radius-lg);border:1px solid var(--border-light);cursor:pointer;transition:all var(--transition-fast);position:relative}.food-option:hover{background:var(--gradient-wedding-accent);color:var(--white);transform:translateX(4px)}.food-option.readonly{opacity:.6;cursor:not-allowed}.food-option.readonly:hover{background:var(--gradient-wedding-subtle);color:var(--text-secondary);transform:none}.food-option input[type=radio]{display:none}.option-text{flex:1}.radio-custom{width:20px;height:20px;border:2px solid var(--border-light);border-radius:50%;position:relative;transition:all var(--transition-fast)}.food-option input[type=radio]:checked+.option-text+.radio-custom{border-color:var(--accent-wedding);background:var(--accent-wedding)}.food-option input[type=radio]:checked+.option-text+.radio-custom:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:var(--white);border-radius:50%}.no-options{text-align:center;padding:var(--space-6);color:var(--text-secondary)}.no-options i{font-size:var(--text-2xl);margin-bottom:var(--space-2);opacity:.5}.guest-form{padding:var(--space-6);border-top:1px solid var(--border-light);text-align:center}.save-message{padding:var(--space-4);margin:var(--space-4) var(--space-6);font-weight:var(--font-medium)}.save-message.success{background:var(--gradient-success);color:var(--white)}.save-message.error{background:var(--gradient-error);color:var(--white)}.save-message i{font-size:var(--text-lg)}@media (max-width:768px){.bride-party-grid,.groom-party-grid{grid-template-columns:1fr;gap:var(--space-4)}.bride-party-welcome,.groom-party-welcome,.wedding-menu-welcome{flex-direction:column;text-align:center;gap:var(--space-3)}.bride-party-icon,.groom-party-icon,.wedding-menu-icon{width:50px;height:50px;font-size:var(--text-lg)}.bride-party-title,.groom-party-title,.wedding-menu-title{font-size:var(--text-2xl)}.add-food-form{gap:var(--space-3)}.add-food-form,.guest-choices{grid-template-columns:1fr}.schedule-item{flex-direction:column;align-items:flex-start;gap:var(--space-1)}.admin-header{flex-direction:column;text-align:center;gap:var(--space-3)}}@media (max-width:480px){.bride-party-content,.groom-party-content,.wedding-menu-content{padding:0 var(--space-4)}.bride-party-header,.groom-party-header,.wedding-menu-header{padding:var(--space-4)}.bride-party-card .card-content,.groom-party-card .card-content{padding:var(--space-3)}.guest-form,.menu-display{padding:var(--space-4)}}.category-panel,.menu-overview,.quick-add-form{padding:var(--space-4)}.category-panel{margin-bottom:var(--space-6);background:var(--gradient-wedding-subtle);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.category-panel:last-child{margin-bottom:0}.category-panel .category-header{margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-light)}.category-panel .category-info{display:flex;align-items:center;gap:var(--space-3)}.category-panel .category-info i{color:var(--accent-wedding);font-size:var(--text-lg)}.category-panel .category-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0;flex:1}.category-panel .item-count{font-size:var(--text-sm);color:var(--text-secondary);background:var(--white);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);border:1px solid var(--border-light)}.item-list,.menu-items{display:flex;flex-direction:column;gap:var(--space-2)}.menu-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3);background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--border-light);transition:all var(--transition-fast)}.menu-item:hover{transform:translateX(4px);box-shadow:var(--shadow-md)}.menu-item .item-name{font-weight:var(--font-medium);color:var(--text-primary)}.guest-selections{padding:var(--space-4)}.selections-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6)}.guest-selection-card{background:var(--gradient-wedding-subtle);border-radius:var(--radius-lg);padding:var(--space-4);border:1px solid var(--border-light);transition:all var(--transition-fast)}.guest-selection-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.guest-info{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-light)}.guest-info i{color:var(--accent-wedding);font-size:var(--text-lg)}.guest-name{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.selections{flex-direction:column}.selection-item,.selections{display:flex;gap:var(--space-2)}.selection-item{align-items:center;font-size:var(--text-sm);color:var(--text-secondary)}.selection-item i{color:var(--accent-wedding);font-size:var(--text-base);width:16px}.selection-label{color:var(--text-primary);font-weight:var(--font-medium);min-width:80px}.selection-value{color:var(--text-secondary);flex:1}.menu-selection{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);overflow:hidden}.selection-header{padding:var(--space-6);border-bottom:1px solid var(--border-light);text-align:center}.selection-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-2) 0;background:var(--gradient-wedding-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.selection-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0}.menu-categories{padding:var(--space-6)}.menu-category{margin-bottom:var(--space-6);background:var(--gradient-wedding-subtle);border-radius:var(--radius-xl);padding:var(--space-4);border:1px solid var(--border-light);transition:all var(--transition-fast)}.menu-category:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.menu-category.readonly{opacity:.8}.menu-category.readonly:hover{transform:none;box-shadow:var(--shadow-md)}.menu-category:last-child{margin-bottom:0}.menu-category .category-header{margin-bottom:var(--space-4);display:flex;justify-content:space-between;align-items:center}.menu-category .category-info{display:flex;align-items:center;gap:var(--space-2)}.menu-category .category-info i{color:var(--accent-wedding);font-size:var(--text-lg)}.menu-category .category-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.menu-category .selection-status{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--gradient-wedding-subtle);color:var(--text-secondary)}.menu-category .selection-status.selected{background:var(--gradient-success);color:var(--white)}.menu-category .selection-status.readonly{background:var(--gradient-muted);color:var(--text-muted)}.menu-category .selection-status i{font-size:var(--text-base)}.menu-options{display:flex;flex-direction:column;gap:var(--space-3)}.options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-3)}.menu-option{display:block;cursor:pointer;transition:all var(--transition-fast)}.menu-option input[type=radio]{display:none}.option-content{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);background:var(--white);border-radius:var(--radius-lg);border:2px solid var(--border-light);transition:all var(--transition-fast);position:relative}.menu-option:hover .option-content{border-color:var(--accent-wedding);transform:translateX(4px);box-shadow:var(--shadow-md)}.menu-option.selected .option-content{border-color:var(--accent-wedding);background:var(--gradient-wedding-accent);color:var(--white)}.menu-option.readonly{cursor:default}.menu-option.readonly .option-content{background:var(--gradient-muted);border-color:var(--border-light)}.menu-option.readonly:hover .option-content{border-color:var(--border-light);transform:none;box-shadow:none}.option-text{font-weight:var(--font-medium);font-size:var(--font-size-lg);color:var(--text-primary);margin-bottom:var(--space-1)}.option-description{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-2);font-style:italic}.option-content .allergen-symbols{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap}.radio-indicator{width:20px;height:20px;border:2px solid var(--border-light);border-radius:50%;position:absolute;top:var(--space-3);right:var(--space-3);transition:all var(--transition-fast)}.menu-option.selected .radio-indicator{border-color:var(--white);background:var(--white)}.menu-option.selected .radio-indicator:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:var(--accent-wedding);border-radius:50%}.selection-actions{padding:var(--space-6);border-top:1px solid var(--border-light);text-align:center}.btn-large{padding:var(--space-4) var(--space-8);font-size:var(--text-lg);font-weight:var(--font-semibold)}.btn-large:disabled{opacity:.6;cursor:not-allowed}.message-notice{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-lg);margin:var(--space-4) var(--space-6);font-weight:var(--font-medium)}.message-notice.success{background:var(--gradient-success);color:var(--white)}.message-notice.error{background:var(--gradient-error);color:var(--white)}.message-notice i{font-size:var(--text-lg)}.empty-state{padding:var(--space-6);color:var(--text-secondary)}.empty-state i{font-size:var(--text-2xl);margin-bottom:var(--space-2);opacity:.5}.empty-state p{margin:0;font-size:var(--text-sm)}@media (max-width:768px){.form-row{gap:var(--space-3)}.form-row,.options-grid,.selections-grid{grid-template-columns:1fr}.menu-categories,.selection-actions,.selection-header{padding:var(--space-4)}.message-notice{margin:var(--space-4)}}@media (max-width:480px){.category-panel,.guest-selection-card,.menu-category{padding:var(--space-3)}.selection-item{flex-direction:column;align-items:flex-start;gap:var(--space-1)}.selection-label{min-width:auto}}.item-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4);margin-top:var(--space-4)}.food-item-card{background:var(--white);border-radius:var(--radius-xl);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:all var(--transition-fast);overflow:hidden}.food-item-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-accent)}.food-item-content{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);position:relative}.food-item-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;background:var(--color-secondary);box-shadow:var(--shadow-sm);flex-shrink:0}.food-item-icon i{font-size:1.25rem;color:var(--white)}.food-item-details{flex:1;min-width:0}.food-item-name{font-size:1rem;font-weight:600;color:var(--gray-900);margin:0 0 var(--space-1) 0;line-height:1.4}.food-item-category{font-size:.875rem;color:var(--gray-600);font-weight:500}.food-item-description{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-relaxed);margin-top:var(--space-1);font-style:italic}.food-item-delete{width:32px;height:32px;border-radius:var(--radius-md);border:none;background:var(--color-danger-light);color:var(--color-danger);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.food-item-delete:hover{background:var(--color-danger);color:var(--white);transform:scale(1.05)}.food-item-delete i{font-size:1rem}@media (max-width:768px){.item-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-3)}.food-item-content{padding:var(--space-3);gap:var(--space-3)}.food-item-icon{width:40px;height:40px}.food-item-icon i{font-size:1.125rem}.food-item-name{font-size:.9375rem}.food-item-category{font-size:.8125rem}.food-item-delete{width:28px;height:28px}.food-item-delete i{font-size:.875rem}}@media (max-width:480px){.item-grid{grid-template-columns:1fr;gap:var(--space-2)}.food-item-content{padding:var(--space-3)}}.rsvp-overview-container{max-width:1200px;margin:0 auto}.rsvp-overview-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);overflow:hidden}.rsvp-overview-header{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-6);background:linear-gradient(135deg,var(--gradient-wedding-primary));color:var(--white)}.overview-icon{width:64px;height:64px;border-radius:var(--radius-xl);background:hsla(0,0%,100%,.2);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.overview-icon i{font-size:1.75rem;color:var(--white)}.overview-details{flex:1}.overview-title{font-size:1.75rem;font-weight:700;margin:0 0 var(--space-2) 0;color:var(--white)}.overview-subtitle{font-size:1rem;margin:0;opacity:.9;color:var(--white)}.rsvp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);padding:var(--space-6);background:var(--gray-50)}.stat-card{background:var(--white);border-radius:var(--radius-xl);padding:var(--space-4);display:flex;align-items:center;gap:var(--space-4);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);transition:all var(--transition-fast);cursor:pointer}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-card.stat-card-active{box-shadow:var(--shadow-md),0 0 0 2px var(--color-primary);transform:translateY(-2px)}.stat-card.attending{border-left:4px solid var(--color-success)}.stat-card.not-attending{border-left:4px solid var(--color-danger)}.stat-card.pending{border-left:4px solid var(--warning-500)}.stat-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card.attending .stat-icon{background:var(--gradient-success)}.stat-card.not-attending .stat-icon{background:var(--gradient-danger)}.stat-card.pending .stat-icon{background:var(--gradient-warning)}.stat-icon i{font-size:1.25rem;color:var(--white)}.stat-content{flex:1}.stat-number{font-size:2rem;font-weight:700;margin:0 0 var(--space-1) 0;color:var(--gray-900)}.stat-label{font-size:.875rem;font-weight:500;margin:0;color:var(--gray-600);text-transform:uppercase;letter-spacing:.5px}.rsvp-search-wrap{padding:0 var(--space-6) var(--space-4)}.rsvp-search-inner{display:flex;align-items:center;gap:var(--space-2);max-width:400px;padding:var(--space-2) var(--space-3);background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.rsvp-search-inner:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(139,90,150,.2)}.rsvp-search-icon{color:var(--gray-500);font-size:1.25rem;flex-shrink:0}.rsvp-search-input{flex:1;min-width:0;border:none;outline:none;font-size:var(--font-size-base);color:var(--text-primary);background:transparent}.rsvp-search-input::-moz-placeholder{color:var(--gray-400)}.rsvp-search-input::placeholder{color:var(--gray-400)}.rsvp-search-clear{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md);background:var(--gray-100);color:var(--gray-600);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.rsvp-search-clear:hover{background:var(--gray-200);color:var(--gray-800)}.rsvp-search-hint{margin:var(--space-1) 0 0;font-size:var(--font-size-sm);color:var(--text-secondary)}.rsvp-responses{padding:var(--space-6)}.responses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-4)}.response-card{background:var(--white);border-radius:var(--radius-xl);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:all var(--transition-fast);overflow:hidden}.response-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.response-card.responded{border-color:var(--color-success)}.response-header{gap:var(--space-4);padding:var(--space-4);background:var(--gray-50)}.guest-avatar,.response-header{display:flex;align-items:center}.guest-avatar{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--gradient-wedding-accent);justify-content:center;flex-shrink:0}.guest-avatar i{font-size:1rem;color:var(--white)}.guest-info{flex:1;min-width:0}.guest-name{font-size:1rem;font-weight:600;margin:0 0 var(--space-1) 0;color:var(--gray-900)}.response-status{font-size:.875rem;margin:0;display:flex;align-items:center;gap:var(--space-1);color:var(--gray-600)}.response-status.responded{color:var(--color-success)}.response-status i{font-size:1rem}.response-details,.response-pending{padding:var(--space-4);display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.response-details .menu-choices-row{flex-basis:100%;margin-top:var(--space-2)}.response-pending-wrapper{padding:var(--space-4);display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.response-pending-wrapper .menu-choices-row{flex-basis:100%;margin-top:var(--space-2)}.menu-choices-row--pending{border-color:var(--warning-500);background:var(--warning-50)}.menu-choices-row--pending .menu-choices-label span{color:var(--warning-700)}.response-choice{display:flex;align-items:center;gap:var(--space-2);font-weight:500}.response-choice.attending{color:var(--color-success)}.response-choice.not-attending{color:var(--color-danger)}.response-choice i{font-size:1.125rem}.response-pending{color:var(--warning-500);font-style:italic}.response-pending i{font-size:1.125rem}@media (max-width:768px){.rsvp-search-wrap{padding-left:var(--space-4);padding-right:var(--space-4)}.rsvp-search-inner{max-width:none}.rsvp-overview-header{padding:var(--space-4);gap:var(--space-4)}.overview-icon{width:48px;height:48px}.overview-icon i,.overview-title{font-size:1.5rem}.overview-subtitle{font-size:.9375rem}.rsvp-stats{grid-template-columns:1fr;gap:var(--space-3);padding:var(--space-4)}.stat-card{padding:var(--space-3);gap:var(--space-3)}.stat-icon{width:40px;height:40px}.stat-icon i{font-size:1.125rem}.stat-number{font-size:1.75rem}.responses-grid{grid-template-columns:1fr;gap:var(--space-3)}.rsvp-responses{padding:var(--space-4)}}@media (max-width:480px){.rsvp-overview-header{flex-direction:column;text-align:center;gap:var(--space-3)}.overview-icon{width:56px;height:56px}.response-header,.stat-card{flex-direction:column;text-align:center;gap:var(--space-2)}}.allergen-info-banner{background:linear-gradient(135deg,var(--warning-100) 0,var(--warning-50) 100%);border:2px solid var(--warning-500);border-radius:var(--radius-xl);margin-bottom:var(--space-8);box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.allergen-info-banner:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cpattern id='a' x='0' y='0' width='20' height='20' patternUnits='userSpaceOnUse'%3E%3Ccircle cx='10' cy='10' r='2' fill='%23F59E0B' opacity='.1'/%3E%3C/pattern%3E%3C/defs%3E%3Cpath fill='url(%23a)' d='M0 0h100v100H0z'/%3E%3C/svg%3E");pointer-events:none}.allergen-info-content{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-6);position:relative;z-index:1}.allergen-info-icon{width:60px;height:60px;border-radius:var(--radius-xl);background:var(--color-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--shadow-md)}.allergen-info-icon i{font-size:1.75rem;color:var(--white)}.allergen-info-text{flex:1}.allergen-info-title{font-size:1.5rem;font-weight:700;color:var(--warning-700);margin:0 0 var(--space-2) 0}.allergen-info-subtitle{font-size:1rem;color:var(--gray-700);margin:0;line-height:1.5}.allergen-info{margin-top:var(--space-2);padding:var(--space-2);background:var(--warning-100);border-radius:var(--radius-md);border:1px solid var(--warning-500)}.allergen-label{font-size:.75rem;font-weight:600;color:var(--warning-700);text-transform:uppercase;letter-spacing:.5px;margin-right:var(--space-1)}.allergen-text{font-size:.8125rem;color:var(--gray-700);font-weight:500}.food-item-actions{display:flex;gap:var(--space-2);align-items:center}.food-item-edit{width:32px;height:32px;border-radius:var(--radius-md);border:none;background:var(--color-info-light);color:var(--color-info);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.food-item-edit:hover{background:var(--color-info);color:var(--white);transform:scale(1.05)}.food-item-edit i{font-size:1rem}.allergen-symbols{display:flex;gap:var(--space-1);margin-top:var(--space-2);flex-wrap:wrap}.allergen-symbol{font-size:1.125rem;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.allergen-checkbox-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-3);margin-top:var(--space-2);max-height:200px;overflow-y:auto;padding:var(--space-3);background:var(--gray-50);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.allergen-checkbox-label{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--white);border-radius:var(--radius-md);border:1px solid var(--border-light);cursor:pointer;transition:all var(--transition-fast);font-size:.875rem;font-weight:500}.allergen-checkbox-label:hover{background:var(--color-primary-light);border-color:var(--color-primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.allergen-checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer}.allergen-checkbox-text{flex:1;color:var(--gray-700);-webkit-user-select:none;-moz-user-select:none;user-select:none}.allergen-checkbox-label:has(input:checked){background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary-dark)}.allergen-checkbox-label:has(input:checked) .allergen-checkbox-text{color:var(--color-primary-dark);font-weight:600}.modal-overlay{background:rgba(0,0,0,.5);z-index:1000;padding:var(--space-4)}.modal-content{border-radius:var(--radius-2xl);max-width:500px;width:100%;overflow-y:auto}.modal-header{padding:var(--space-6)}.modal-title{font-size:1.25rem;font-weight:600;color:var(--gray-900)}.modal-close{width:32px;height:32px;border-radius:var(--radius-md);border:none;background:var(--gray-100);color:var(--gray-600);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.modal-close:hover{background:var(--gray-200);color:var(--gray-800)}.modal-close i{font-size:1.125rem}.modal-body,.modal-footer{padding:var(--space-6)}.modal-footer{display:flex;gap:var(--space-3);justify-content:flex-end}.form-textarea{width:100%;padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-lg);font-size:.9375rem;font-family:inherit;resize:vertical;min-height:80px;transition:all var(--transition-fast)}.form-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.allergen-legend-modal{max-width:600px}.allergen-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.legend-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--gray-50);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.allergen-symbol{font-size:1.5rem}.allergen-name{font-size:.9375rem;font-weight:500;color:var(--gray-700)}.selection-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6)}.btn-small{padding:var(--space-2) var(--space-3);font-size:.875rem}@media (max-width:768px){.allergen-info-banner{margin-bottom:var(--space-6)}.allergen-info-content{flex-direction:column;text-align:center;gap:var(--space-4);padding:var(--space-4)}.allergen-info-icon{width:50px;height:50px}.allergen-info-icon i{font-size:1.5rem}.allergen-info-title{font-size:1.25rem}.allergen-info-subtitle{font-size:.9375rem}.food-item-actions{gap:var(--space-1)}.food-item-delete,.food-item-edit{width:28px;height:28px}.food-item-delete i,.food-item-edit i{font-size:.875rem}.allergen-symbols{gap:var(--space-1)}.allergen-symbol{font-size:1rem}.modal-content{margin:var(--space-4);max-height:85vh}.modal-body,.modal-footer,.modal-header{padding:var(--space-4)}.allergen-legend{grid-template-columns:1fr;gap:var(--space-3)}.selection-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.allergen-checkbox-group{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:var(--space-2);max-height:180px}.allergen-checkbox-label{padding:var(--space-2);font-size:.8125rem}}@media (max-width:480px){.modal-overlay{padding:var(--space-2)}.modal-content{margin:var(--space-2)}.modal-body,.modal-footer,.modal-header{padding:var(--space-3)}.allergen-legend,.legend-item{gap:var(--space-2)}.legend-item{padding:var(--space-2)}.allergen-symbol{font-size:1.25rem}.allergen-name{font-size:.875rem}.allergen-checkbox-group{grid-template-columns:1fr;gap:var(--space-2);max-height:150px}.allergen-checkbox-label{padding:var(--space-2);font-size:.8125rem}}.allergen-display{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.allergen-display .allergen-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary);white-space:nowrap}.allergen-display .allergen-symbols{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap}.allergen-display .allergen-symbol{font-size:var(--font-size-sm);padding:var(--space-1);border-radius:var(--radius-md);background:var(--warning-50);border:1px solid var(--warning-200);cursor:help;transition:all var(--transition-fast)}.allergen-display .allergen-symbol:hover{background:var(--warning-100);border-color:var(--warning-300);transform:scale(1.1)}.add-item-modal{max-width:600px;width:90vw}.allergen-selection{margin-top:var(--space-2)}.allergen-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3);max-height:300px;overflow-y:auto;padding:var(--space-2);border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--bg-secondary)}.allergen-option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);border:2px solid var(--border-light);border-radius:var(--radius-lg);background:var(--white);cursor:pointer;transition:all var(--transition-fast);position:relative}.allergen-option:hover{border-color:var(--border-medium);background:var(--bg-tertiary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.allergen-option input[type=checkbox]{position:absolute;opacity:0;cursor:pointer}.allergen-option-content{display:flex;align-items:center;gap:var(--space-2);width:100%}.allergen-option .allergen-symbol{font-size:var(--font-size-lg);width:24px;text-align:center}.allergen-option .allergen-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.allergen-option:has(input:checked){border-color:var(--color-primary);background:var(--primary-50);box-shadow:var(--shadow-md)}.allergen-option:has(input:checked):before{content:"✓";position:absolute;top:var(--space-1);right:var(--space-1);width:20px;height:20px;background:var(--color-primary);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-6);background:var(--white);padding:var(--space-6);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light)}.admin-header-icon{width:60px;height:60px;border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;background:var(--gradient-wedding-primary);box-shadow:var(--shadow-md)}.admin-header-icon i{font-size:var(--font-size-2xl);color:var(--white)}.admin-header-text{flex:1}.admin-header-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--space-1)}.admin-header-subtitle{font-size:var(--font-size-base);color:var(--text-secondary)}@media (max-width:768px){.admin-header{flex-direction:column;align-items:flex-start;gap:var(--space-4)}.allergen-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-2);max-height:250px}.allergen-option{padding:var(--space-2)}.allergen-option .allergen-symbol{font-size:var(--font-size-base)}.allergen-option .allergen-name{font-size:var(--font-size-xs)}}@media (max-width:480px){.allergen-grid{grid-template-columns:1fr;gap:var(--space-2);max-height:200px}.allergen-option{padding:var(--space-2)}.allergen-display{flex-direction:column;align-items:flex-start}.allergen-display,.allergen-display .allergen-symbols{gap:var(--space-1)}.allergen-display .allergen-symbol{font-size:var(--font-size-xs);padding:var(--space-1)}}.dietary-requirements-section{margin:var(--space-6) 0;padding:var(--space-6);background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-md);border:1px solid var(--border-light);animation:slideInUp .3s ease-out;border-left:4px solid var(--color-accent)}.dietary-header{margin-bottom:var(--space-4);text-align:center}.dietary-title{display:flex;align-items:center;justify-content:center;gap:var(--space-3);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.dietary-title i{color:var(--color-accent);font-size:var(--font-size-2xl)}.dietary-subtitle{font-size:var(--font-size-base);color:var(--text-secondary);line-height:1.5}.dietary-textarea{width:100%;padding:var(--space-4);border:2px solid var(--border-light);border-radius:var(--radius-xl);font-size:var(--font-size-base);font-family:inherit;line-height:1.6;resize:vertical;min-height:120px;max-height:400px;transition:all var(--transition-fast);background:var(--white)}.dietary-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.dietary-textarea::-moz-placeholder{color:var(--text-tertiary)}.dietary-textarea::placeholder{color:var(--text-tertiary)}.dietary-char-count{text-align:right;font-size:var(--font-size-sm);color:var(--text-tertiary);margin-top:var(--space-2);font-style:italic}.dietary-row{margin-top:var(--space-2);padding:var(--space-3);background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm)}.dietary-info{margin:0;padding:0;background:transparent;border-radius:0;border-left:none}.dietary-label{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-2);font-size:var(--font-size-sm)}.dietary-label i{color:var(--color-accent);font-size:var(--font-size-base)}.dietary-text{color:var(--text-secondary);line-height:1.5;font-size:var(--font-size-sm);white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto;padding:var(--space-2);background:var(--gray-50);border-radius:var(--radius-md);border:1px solid var(--border-light)}.menu-choices-row{margin-top:var(--space-2);padding:var(--space-3);background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm)}.menu-choices-info{margin:0;padding:0;background:transparent;border-radius:0}.menu-choices-label{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-2);font-size:var(--font-size-sm)}.menu-choices-label i{color:var(--color-accent);font-size:var(--font-size-base)}.menu-choices-text{display:flex;flex-direction:column;gap:var(--space-1);color:var(--text-secondary);font-size:var(--font-size-sm)}.menu-choice-item{padding:var(--space-1) 0}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.dietary-requirements-section{padding:var(--space-4);margin:var(--space-4) 0}.dietary-title{font-size:var(--font-size-lg)}.dietary-textarea{padding:var(--space-3);min-height:100px}.dietary-row{margin-top:var(--space-3);padding:var(--space-2)}.dietary-text{max-height:150px;font-size:var(--font-size-xs)}}@media (max-width:480px){.dietary-requirements-section{padding:var(--space-3)}.dietary-title{flex-direction:column;gap:var(--space-2)}.dietary-textarea{padding:var(--space-2);font-size:var(--font-size-sm)}}.access-denied-container{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:var(--space-8)}.access-denied-card{background:linear-gradient(135deg,var(--color-accent-light) 0,var(--gray-100) 100%);border:2px solid var(--color-secondary);border-radius:var(--radius-2xl);padding:var(--space-8);max-width:600px;width:100%;text-align:center;box-shadow:var(--shadow-xl);position:relative;overflow:hidden}.access-denied-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cpattern id='a' x='0' y='0' width='20' height='20' patternUnits='userSpaceOnUse'%3E%3Cpath d='M10 6.5C8.5 5 6.5 5 5 6.5s-1.5 3.5 0 5l5 5 5-5c1.5-1.5 1.5-3.5 0-5s-3.5-1.5-5 0z' fill='%23D4A5A5' opacity='.1'/%3E%3C/pattern%3E%3C/defs%3E%3Cpath fill='url(%23a)' d='M0 0h100v100H0z'/%3E%3C/svg%3E");opacity:.3;pointer-events:none}.access-denied-icon{width:80px;height:80px;background:var(--color-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-6);box-shadow:var(--shadow-lg);position:relative;z-index:1}.access-denied-icon i{font-size:2.5rem;color:#fff}.access-denied-content{position:relative;z-index:1}.access-denied-title{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-accent-neutral);margin-bottom:var(--space-4);font-family:var(--font-heading)}.access-denied-message{font-size:var(--font-size-lg);color:var(--color-accent-neutral);line-height:1.6;margin-bottom:var(--space-6)}.access-denied-message .rsvp-link{color:var(--color-primary);text-decoration:none;font-weight:600;border-bottom:2px solid transparent;transition:all .3s ease}.access-denied-message .rsvp-link:hover{color:var(--color-primary);border-bottom-color:var(--color-primary)}.access-denied-actions{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}.access-denied-actions .btn{min-width:160px;padding:var(--space-3) var(--space-6);font-size:var(--font-size-base);font-weight:600;border-radius:var(--radius-lg);transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.access-denied-actions .btn-wedding-primary{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary) 100%);color:#fff;border:2px solid var(--color-primary)}.access-denied-actions .btn-wedding-primary:hover{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary) 100%);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.access-denied-actions .btn-wedding-secondary{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.access-denied-actions .btn-wedding-secondary:hover{background:var(--color-primary);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-lg)}@media (max-width:768px){.access-denied-container{padding:var(--space-4);min-height:50vh}.access-denied-card{padding:var(--space-6)}.access-denied-icon{width:64px;height:64px;margin-bottom:var(--space-4)}.access-denied-icon i{font-size:2rem}.access-denied-title{font-size:var(--font-size-xl);margin-bottom:var(--space-3)}.access-denied-message{font-size:var(--font-size-base);margin-bottom:var(--space-4)}.access-denied-actions{flex-direction:column;align-items:center}.access-denied-actions .btn{width:100%;max-width:280px}}@media (max-width:480px){.access-denied-card{padding:var(--space-4)}.access-denied-title{font-size:var(--font-size-lg)}.access-denied-message{font-size:var(--font-size-sm)}}.house-guest-section{width:100%}.house-guest-hero{background:linear-gradient(135deg,var(--color-primary) 0,var(--primary-700) 100%);padding:var(--space-12) var(--space-6);text-align:center;color:var(--white);margin-bottom:var(--space-8);border-radius:var(--radius-2xl);position:relative;overflow:hidden}.house-guest-hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cpattern id='a' x='0' y='0' width='20' height='20' patternUnits='userSpaceOnUse'%3E%3Cpath d='M10 6.5C8.5 5 6.5 5 5 6.5s-1.5 3.5 0 5l5 5 5-5c1.5-1.5 1.5-3.5 0-5s-3.5-1.5-5 0z' fill='%23FFF' opacity='.1'/%3E%3C/pattern%3E%3C/defs%3E%3Cpath fill='url(%23a)' d='M0 0h100v100H0z'/%3E%3C/svg%3E");opacity:.3;pointer-events:none}.house-guest-hero-content{position:relative;z-index:1}.house-guest-hero-icon{width:80px;height:80px;background:hsla(0,0%,100%,.2);border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-4);font-size:var(--font-size-3xl);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.3);color:var(--white)}.house-guest-hero-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-2);color:var(--white);font-family:var(--font-family-serif)}.house-guest-hero-subtitle{font-size:var(--font-size-lg);opacity:.9;margin:0}.house-info-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);margin-bottom:var(--space-6);overflow:hidden;transition:all var(--transition-normal);position:relative}.house-info-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-wedding-primary)}.house-info-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.house-info-card .card-header{background:linear-gradient(135deg,var(--gray-50) 0,var(--white) 100%);padding:var(--space-6);border-bottom:1px solid var(--border-light);display:flex;align-items:center;gap:var(--space-4)}.house-info-card .card-icon{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--color-secondary);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);flex-shrink:0}.house-info-card .card-icon i{color:var(--white);font-size:var(--font-size-xl)}.house-info-card .card-text{flex:1}.house-info-card .card-title{font-family:var(--font-family-serif);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--space-1) 0;line-height:var(--line-height-tight)}.house-info-card .card-subtitle{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.house-info-card .card-content{padding:var(--space-6)}.room-info{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:linear-gradient(135deg,var(--primary-50) 0,var(--white) 100%);border-radius:var(--radius-xl);border:1px solid var(--border-light)}.room-info i{font-size:var(--font-size-2xl)}.room-info i,.room-number{color:var(--color-primary)}.room-number{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.admin-edit-content h3,.admin-edit-section{margin-bottom:var(--space-6)}.admin-edit-content h3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);display:flex;align-items:center;gap:var(--space-3)}.admin-edit-content h3 i{color:var(--color-primary)}.room-assignment-card{margin-bottom:var(--space-6)}.room-assignment-form{margin-top:var(--space-4)}.form-section-header{margin-bottom:var(--space-4)}.form-section-header h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.form-section-header p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.form-row{display:grid;grid-template-columns:1fr 1fr auto;gap:var(--space-4);align-items:end}.form-group-button{display:flex;align-items:flex-end}.form-label{margin-bottom:var(--space-2)}.select-input{width:100%}.assign-btn{white-space:nowrap}.save-message{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);margin-top:var(--space-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.save-message.success{background:var(--success-50);color:var(--success-700);border:1px solid var(--success-200)}.save-message.error{background:var(--error-50);color:var(--error-700);border:1px solid var(--error-200)}.no-users-message{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-6);background:var(--gray-50);border-radius:var(--radius-xl);border:2px dashed var(--border-light)}.no-users-icon{width:64px;height:64px;background:var(--gray-200);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;flex-shrink:0}.no-users-icon i{font-size:var(--font-size-2xl);color:var(--text-muted)}.no-users-content h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.no-users-content p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0;line-height:var(--line-height-relaxed)}.video-container{position:relative;width:100%;padding-bottom:56.25%;height:0;overflow:hidden;background:var(--gray-100)}.video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.no-results{text-align:center;padding:var(--space-8);color:var(--text-muted)}.no-results i{font-size:var(--font-size-4xl);margin-bottom:var(--space-4);display:block;color:var(--text-muted)}.no-results p{font-size:var(--font-size-base);margin:0}@media (max-width:768px){.house-guest-hero{padding:var(--space-8) var(--space-4)}.house-guest-hero-title{font-size:var(--font-size-3xl)}.form-row{grid-template-columns:1fr}.house-info-card .card-header,.no-users-message{flex-direction:column;text-align:center}}.venue-container[data-v-4fa7ed97]{padding-top:0}.venue-hero[data-v-4fa7ed97]{position:relative;min-height:70vh;margin-bottom:var(--space-12);border-radius:var(--radius-3xl);overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.15)}.venue-hero-background[data-v-4fa7ed97]{position:absolute;top:0;left:0;right:0;bottom:0;background-size:contain;background-position:50%;background-repeat:no-repeat;background-color:#f8f5f0;z-index:0;opacity:1}.venue-hero-content[data-v-4fa7ed97]{position:absolute;top:0;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;justify-content:space-between;width:100%;padding:var(--space-6) var(--space-6)}.venue-hero-bottom[data-v-4fa7ed97],.venue-hero-top[data-v-4fa7ed97]{text-align:center;width:100%}.venue-hero-decoration-top[data-v-4fa7ed97]{display:flex;align-items:center;justify-content:center;gap:var(--space-4);margin-bottom:var(--space-3)}.venue-hero-decoration-bottom[data-v-4fa7ed97]{display:flex;align-items:center;justify-content:center;gap:var(--space-4);margin-top:var(--space-3)}.decoration-line[data-v-4fa7ed97]{width:80px;height:1px;background:linear-gradient(90deg,transparent 0,var(--color-primary) 50%,transparent 100%)}.decoration-icon[data-v-4fa7ed97]{color:var(--color-primary);font-size:var(--font-size-xl);opacity:.8;animation:gentle-pulse-4fa7ed97 3s ease-in-out infinite}@keyframes gentle-pulse-4fa7ed97{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.venue-hero .venue-title[data-v-4fa7ed97]{font-weight:var(--font-weight-bold);color:var(--color-primary);letter-spacing:.02em;line-height:1.2}.venue-hero .venue-title[data-v-4fa7ed97],.venue-subtitle[data-v-4fa7ed97]{font-family:var(--font-family-serif);position:relative;display:inline-block;padding:var(--space-2) var(--space-4)}.venue-subtitle[data-v-4fa7ed97]{font-size:clamp(1.1rem,2vw,1.5rem);color:var(--text-secondary);font-style:italic;font-weight:var(--font-weight-normal);margin:0;letter-spacing:.05em;text-shadow:0 2px 8px hsla(0,0%,100%,.9),0 4px 16px hsla(0,0%,100%,.7);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dashboard-deadline-note[data-v-4fa7ed97]{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);margin-bottom:var(--space-8);background:var(--white);border-radius:var(--radius-xl);box-shadow:0 4px 20px rgba(0,0,0,.06);border:1px solid rgba(0,0,0,.06);border-left:4px solid var(--color-primary)}.dashboard-deadline-note--icon-top[data-v-4fa7ed97]{align-items:flex-start}.deadline-note-icon[data-v-4fa7ed97]{flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:var(--white);display:flex;align-items:center;justify-content:center;font-size:1.5rem}.deadline-note-text[data-v-4fa7ed97]{margin:0;font-size:var(--font-size-lg);color:#99058a;line-height:1.5;font-weight:var(--font-weight-medium)}.deadline-note-text strong[data-v-4fa7ed97]{color:#99058a;font-weight:var(--font-weight-bold)}.deadline-note-link[data-v-4fa7ed97]{color:inherit;font-weight:var(--font-weight-bold);text-decoration:underline;text-underline-offset:3px}.deadline-note-link[data-v-4fa7ed97]:hover{opacity:.9}.deadline-note-details-body[data-v-4fa7ed97]{margin-top:var(--space-3);display:grid;gap:var(--space-2)}.deadline-note-bank-row[data-v-4fa7ed97]{display:flex;gap:var(--space-2);flex-wrap:wrap}.dashboard-widgets[data-v-4fa7ed97]{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-8);margin-bottom:var(--space-8)}.venue-info-card[data-v-4fa7ed97]{background:var(--white);border-radius:var(--radius-2xl);box-shadow:0 8px 30px rgba(0,0,0,.08);padding:var(--space-8);position:relative;overflow:hidden;transition:all .3s ease;border:1px solid rgba(0,0,0,.05)}.venue-info-card[data-v-4fa7ed97]:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary) 0,var(--color-secondary) 100%)}.venue-info-card[data-v-4fa7ed97]:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(0,0,0,.12)}.card-header[data-v-4fa7ed97]{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid rgba(0,0,0,.08)}.card-icon-wrapper[data-v-4fa7ed97]{width:56px;height:56px;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-2xl);color:var(--white);box-shadow:0 4px 12px rgba(0,0,0,.15)}.card-title[data-v-4fa7ed97]{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0;font-family:var(--font-family-serif);letter-spacing:.01em}.card-content[data-v-4fa7ed97]{padding-top:var(--space-2)}.date-display-wrapper[data-v-4fa7ed97],.location-display[data-v-4fa7ed97]{min-height:60px}.date-display[data-v-4fa7ed97]{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.date-text[data-v-4fa7ed97]{font-size:var(--font-size-xl);color:var(--text-primary);font-weight:var(--font-weight-semibold);font-family:var(--font-family-serif);line-height:1.6;flex:1}.location-display[data-v-4fa7ed97]{display:flex;flex-direction:column;gap:var(--space-2)}.location-text[data-v-4fa7ed97]{font-size:var(--font-size-lg);color:var(--text-secondary);margin:0;font-weight:var(--font-weight-medium);line-height:1.6}.location-text[data-v-4fa7ed97]:first-child{font-weight:var(--font-weight-semibold);color:var(--text-primary);font-size:var(--font-size-xl)}.loading-section[data-v-4fa7ed97]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-6);gap:var(--space-4)}.loading-spinner[data-v-4fa7ed97]{width:40px;height:40px;border:3px solid rgba(0,0,0,.1);border-top-color:var(--color-primary);border-radius:50%;animation:spin-4fa7ed97 .8s linear infinite}@keyframes spin-4fa7ed97{to{transform:rotate(1turn)}}.loading-text[data-v-4fa7ed97]{color:var(--text-secondary);font-size:var(--font-size-sm)}.error-notice[data-v-4fa7ed97]{display:flex;align-items:center;gap:var(--space-2);color:var(--color-error);font-size:var(--font-size-sm);padding:var(--space-4);background:rgba(220,38,38,.1);border-radius:var(--radius-md);border:1px solid rgba(220,38,38,.2)}.inline-edit-wrapper[data-v-4fa7ed97]{display:flex;flex-direction:column;gap:var(--space-3)}.date-input[data-v-4fa7ed97]{width:100%;padding:var(--space-3);border:2px solid var(--color-primary);border-radius:var(--radius-md);font-size:var(--font-size-lg)}.inline-actions[data-v-4fa7ed97]{display:flex;gap:var(--space-2);justify-content:flex-end}.btn-edit-inline[data-v-4fa7ed97]{background:transparent;color:var(--text-secondary);border:1px solid transparent;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-sm);transition:all var(--transition-fast);opacity:.6}.btn-edit-inline[data-v-4fa7ed97]:hover{opacity:1;background:rgba(0,0,0,.05);color:var(--color-primary)}@media (max-width:768px){.venue-hero[data-v-4fa7ed97]{min-height:50vh;margin-bottom:var(--space-8);border-radius:var(--radius-2xl)}.venue-hero-content[data-v-4fa7ed97]{padding:var(--space-6) var(--space-4)}.venue-hero-bottom[data-v-4fa7ed97],.venue-hero-top[data-v-4fa7ed97]{padding:var(--space-2) 0}.decoration-line[data-v-4fa7ed97]{width:50px}.dashboard-deadline-note[data-v-4fa7ed97]{padding:var(--space-3) var(--space-4);gap:var(--space-3)}.deadline-note-text[data-v-4fa7ed97]{font-size:var(--font-size-base)}.dashboard-widgets[data-v-4fa7ed97]{grid-template-columns:1fr;gap:var(--space-6)}.venue-info-card[data-v-4fa7ed97]{padding:var(--space-6)}.card-header[data-v-4fa7ed97]{flex-direction:column;text-align:center;gap:var(--space-3)}.date-display[data-v-4fa7ed97]{flex-direction:column;align-items:flex-start}}@media (max-width:480px){.venue-hero[data-v-4fa7ed97]{min-height:40vh}.venue-hero .venue-title[data-v-4fa7ed97]{font-size:2rem}.venue-subtitle[data-v-4fa7ed97]{font-size:1rem}}.claims-management-container,.user-edit-container,.user-management-container{min-height:100vh;background:linear-gradient(135deg,var(--color-accent-light) 0,var(--gray-100) 100%);padding-top:72px;position:relative;overflow-x:hidden}.claims-management-container:before,.user-edit-container:before,.user-management-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cpattern id='a' x='0' y='0' width='20' height='20' patternUnits='userSpaceOnUse'%3E%3Ccircle cx='10' cy='10' r='1' fill='%23F59E0B' opacity='.1'/%3E%3C/pattern%3E%3C/defs%3E%3Cpath fill='url(%23a)' d='M0 0h100v100H0z'/%3E%3C/svg%3E");opacity:.3;pointer-events:none}.claims-management-content,.user-edit-content,.user-management-content{max-width:1400px;margin:0 auto;padding:var(--space-8) var(--space-6);position:relative;z-index:1}.claims-management-header,.user-edit-header,.user-management-header{margin-bottom:var(--space-8)}.header-actions{justify-content:space-between;gap:var(--space-4)}.header-actions,.user-info{display:flex;align-items:center;margin-bottom:var(--space-6);background:var(--white);padding:var(--space-6);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light)}.user-info{gap:var(--space-6)}.user-avatar{width:80px;height:80px;font-size:var(--font-size-2xl);box-shadow:var(--shadow-lg);transition:all var(--transition-fast)}.user-avatar:hover{transform:scale(1.05);box-shadow:var(--shadow-xl)}.user-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--space-2);font-family:var(--font-family-serif)}.user-subtitle{color:var(--text-secondary);font-size:var(--font-size-lg);margin:0;line-height:var(--line-height-relaxed)}.admin-toggle-section{margin-bottom:var(--space-6)}.admin-toggle-card{background:var(--white);border-radius:var(--radius-2xl);padding:var(--space-6);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);margin-bottom:var(--space-4);transition:all var(--transition-normal);position:relative}.admin-toggle-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-admin-primary)}.admin-toggle-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.admin-toggle-header{position:relative}.admin-toggle-header,.admin-toggle-header-left{display:flex;align-items:center;gap:var(--space-3)}.admin-toggle-header i{font-size:var(--font-size-xl);color:var(--color-highlight);width:24px;text-align:center}.admin-toggle-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.admin-toggle-content{display:flex;align-items:center;gap:var(--space-4)}.admin-toggle{display:flex;align-items:center;gap:var(--space-3);cursor:pointer}.admin-toggle input{display:none}.toggle-slider{width:48px;height:24px;background:var(--gray-300);border-radius:var(--radius-full);position:relative;border:1px solid var(--border-light)}.toggle-slider,.toggle-slider:before{transition:all var(--transition-fast)}.toggle-slider:before{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:var(--white);border-radius:var(--radius-full);box-shadow:var(--shadow-sm)}.admin-toggle input:checked+.toggle-slider{background:var(--gradient-admin-primary);border-color:var(--color-highlight)}.admin-toggle input:checked+.toggle-slider:before{transform:translateX(24px)}.toggle-label{font-weight:var(--font-weight-medium);color:var(--text-primary)}.toggle-spinner{color:var(--text-secondary);font-size:var(--font-size-sm)}.toggle-spinner,.unsaved-notice{display:flex;align-items:center;gap:var(--space-2)}.unsaved-notice{position:absolute;right:var(--space-2);top:50%;transform:translateY(-50%);padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,var(--warning-50) 0,var(--warning-100) 100%);border:1px solid var(--warning-200);border-radius:var(--radius-xl);color:var(--warning-700);font-weight:var(--font-weight-medium);box-sizing:border-box;z-index:1;box-shadow:var(--shadow-sm)}.loading-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12);gap:var(--space-4);background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light)}.loading-spinner{font-size:var(--font-size-3xl);color:var(--color-primary);animation:spin 1s linear infinite}.loading-text{color:var(--text-secondary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.error-notice{background:linear-gradient(135deg,var(--error-50) 0,var(--error-100) 100%);border:1px solid var(--error-200);border-radius:var(--radius-xl);color:var(--error-700)}.error-notice,.success-notice{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4);font-weight:var(--font-weight-medium);margin-bottom:var(--space-6);box-shadow:var(--shadow-sm)}.success-notice{background:linear-gradient(135deg,var(--success-50) 0,var(--success-100) 100%);border:1px solid var(--success-200);border-radius:var(--radius-xl);color:var(--success-700)}.claims-section{margin-top:var(--space-6)}.claims-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--space-6);margin-bottom:var(--space-6)}.claim-group-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);overflow:hidden;transition:all var(--transition-normal);position:relative}.claim-group-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-admin-primary)}.claim-group-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.claim-group-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-6);background:linear-gradient(135deg,var(--gray-50) 0,var(--white) 100%);border-bottom:1px solid var(--border-light)}.claim-group-icon{width:40px;height:40px;background:var(--gradient-admin-primary);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--white);font-size:var(--font-size-lg);box-shadow:var(--shadow-sm)}.claim-group-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.claims-tree{padding:var(--space-6)}.saving-notice{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4);background:linear-gradient(135deg,var(--success-50) 0,var(--success-100) 100%);border:1px solid var(--success-200);border-radius:var(--radius-xl);color:var(--success-700);font-weight:var(--font-weight-medium);box-shadow:var(--shadow-sm)}.header-content{gap:var(--space-6);background:var(--white);padding:var(--space-6);border-radius:var(--radius-2xl);border:1px solid var(--border-light)}.header-content,.header-icon{display:flex;align-items:center;box-shadow:var(--shadow-lg)}.header-icon{width:80px;height:80px;background:var(--gradient-admin-primary);border-radius:var(--radius-2xl);justify-content:center;transition:all var(--transition-fast)}.header-icon:hover{transform:scale(1.05);box-shadow:var(--shadow-xl)}.header-icon i{color:var(--white)}.header-icon i,.header-title{font-size:var(--font-size-3xl)}.header-title{font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--space-2);font-family:var(--font-family-serif)}.header-subtitle{color:var(--text-secondary);font-size:var(--font-size-lg);margin:0;line-height:var(--line-height-relaxed)}.claims-content{margin-top:var(--space-6)}.add-claim-section{margin-top:var(--space-8)}.add-claim-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);overflow:hidden;transition:all var(--transition-normal);position:relative}.add-claim-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-admin-accent)}.add-claim-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.add-claim-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-6);background:linear-gradient(135deg,var(--success-50) 0,var(--success-100) 100%);border-bottom:1px solid var(--border-light)}.add-claim-header i{font-size:var(--font-size-xl);color:var(--success-600);width:24px;text-align:center}.add-claim-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--success-800);margin:0}.add-claim-form{padding:var(--space-6)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.form-group{gap:var(--space-2)}.form-label{font-weight:var(--font-weight-medium);letter-spacing:.05em}.form-input,.form-select{padding:var(--space-3);border:2px solid var(--border-light);border-radius:var(--radius-lg);font-size:var(--font-size-sm);transition:all var(--transition-fast);background:var(--white);font-family:inherit}.form-input:focus,.form-select:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px var(--primary-100)}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-3)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-8);gap:var(--space-6);background:var(--white);padding:var(--space-6);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light)}.page-title-section{flex:1}.page-title{display:flex;align-items:center;gap:var(--space-3);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--space-2);font-family:var(--font-family-serif)}.page-title,.page-title i{font-size:var(--font-size-3xl)}.page-title i{color:var(--primary-600);width:32px;text-align:center}.page-subtitle{color:var(--text-secondary);font-size:var(--font-size-lg);margin:0;line-height:var(--line-height-relaxed)}.page-actions{display:flex;gap:var(--space-3)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16);gap:var(--space-4);background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light)}.loading-container p{color:var(--text-secondary);font-size:var(--font-size-lg);margin:0;font-weight:var(--font-weight-medium)}.users-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--space-6)}.user-card{background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light);overflow:hidden;transition:all var(--transition-normal);position:relative}.user-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-admin-primary)}.user-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.user-card-header{padding:var(--space-6);gap:var(--space-4);border-bottom:1px solid var(--border-light);background:linear-gradient(135deg,var(--gray-50) 0,var(--white) 100%)}.user-avatar,.user-card-header{display:flex;align-items:center}.user-avatar{width:56px;height:56px;border-radius:var(--radius-2xl);justify-content:center;font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);color:var(--white);box-shadow:var(--shadow-md);flex-shrink:0;background:var(--gradient-admin-primary)}.user-info{flex:1;min-width:0}.user-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-actions{display:flex;gap:var(--space-2);flex-shrink:0}.user-card-body{padding:var(--space-4) var(--space-6)}.user-roles{display:flex;gap:var(--space-2);flex-wrap:wrap}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-full);white-space:nowrap;box-shadow:var(--shadow-sm)}.badge i{font-size:var(--font-size-sm)}.empty-state{text-align:center;padding:var(--space-16);background:var(--white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-light)}.empty-state-icon{width:80px;height:80px;background:var(--gray-100);border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-6);color:var(--text-muted);font-size:var(--font-size-4xl)}.empty-state h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.empty-state p{color:var(--text-secondary);font-size:var(--font-size-base);margin-bottom:var(--space-6);line-height:var(--line-height-relaxed)}.modal-title{display:flex;align-items:center;gap:var(--space-3);font-weight:var(--font-weight-semibold);margin:0}.modal-title i{color:var(--primary-600);font-size:var(--font-size-xl);width:24px;text-align:center}.delete-warning{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4);background:linear-gradient(135deg,var(--error-50) 0,var(--error-100) 100%);border-radius:var(--radius-xl);border:1px solid var(--error-200);box-shadow:var(--shadow-sm)}.warning-icon{width:48px;height:48px;background:var(--error-100);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:var(--error-600);font-size:var(--font-size-xl);flex-shrink:0}.warning-content h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--error-800);margin-bottom:var(--space-2)}.warning-content p{color:var(--error-700);font-size:var(--font-size-sm);margin:0;line-height:var(--line-height-relaxed)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .3s ease-out}.modal-content{background:var(--white);border-radius:var(--radius-3xl);box-shadow:var(--shadow-2xl);max-width:650px;width:95%;max-height:90vh;overflow:hidden;animation:scaleIn .3s ease-out;border:1px solid var(--border-light);padding:0}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6) var(--space-6) var(--space-4);border-bottom:1px solid var(--border-light);background:linear-gradient(135deg,var(--gray-50) 0,var(--white) 100%)}.modal-header-content{display:flex;align-items:center;gap:var(--space-4);flex:1}.modal-icon{width:48px;height:48px;background:var(--gradient-admin-primary);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:var(--white);font-size:var(--font-size-xl);box-shadow:var(--shadow-md)}.modal-title-section{flex:1}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--space-1) 0;line-height:var(--line-height-tight)}.modal-subtitle{font-size:var(--font-size-sm);margin:0;line-height:var(--line-height-relaxed)}.close-btn,.modal-subtitle{color:var(--text-secondary)}.close-btn{width:40px;height:40px;border:none;background:var(--gray-100);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.close-btn:hover{background:var(--gray-200);color:var(--text-primary);transform:scale(1.05)}.modal-body{padding:var(--space-8);overflow-y:auto;max-height:60vh}.form-section{gap:var(--space-6)}.form-group,.form-section{display:flex;flex-direction:column}.form-group{gap:var(--space-3)}.form-label{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--font-weight-semibold);color:var(--text-primary);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.5px}.form-label i{color:var(--primary-600);font-size:var(--font-size-base)}.input-wrapper{position:relative;display:flex;align-items:center}.form-input{width:100%;padding:var(--space-4) var(--space-4) var(--space-4) var(--space-16);border:2px solid var(--border-light);border-radius:var(--radius-xl);font-size:var(--font-size-base);background:var(--white);color:var(--text-primary);transition:all var(--transition-fast);font-family:inherit}.form-input:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px var(--primary-100);background:var(--white)}.form-input::-moz-placeholder{color:var(--text-muted)}.form-input::placeholder{color:var(--text-muted)}.input-icon{position:absolute;left:var(--space-6);top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:var(--font-size-lg);pointer-events:none;transition:color var(--transition-fast);z-index:1}.form-input:focus+.input-icon{color:var(--primary-600)}.form-hint{font-size:var(--font-size-xs);color:var(--text-muted);line-height:var(--line-height-relaxed);margin-top:var(--space-1)}.modal-footer{padding:var(--space-6) var(--space-8);border-top:1px solid var(--border-light);background:var(--gray-50)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--space-4)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (max-width:768px){.claims-management-content,.user-edit-content{padding:var(--space-6) var(--space-4)}.header-actions{align-items:stretch}.header-actions,.user-info{flex-direction:column;padding:var(--space-4)}.user-info{text-align:center;gap:var(--space-4)}.user-avatar{width:60px;height:60px;font-size:var(--font-size-xl)}.user-title{font-size:var(--font-size-2xl)}.admin-toggle-content{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.claims-grid{grid-template-columns:1fr}.header-content{flex-direction:column;text-align:center;gap:var(--space-4);padding:var(--space-4)}.header-icon{width:60px;height:60px}.header-icon i,.header-title{font-size:var(--font-size-2xl)}.form-grid{grid-template-columns:1fr}.form-actions{justify-content:stretch}.user-management-content{padding:var(--space-4) var(--space-3)}.page-header{flex-direction:column;align-items:flex-start;gap:var(--space-4);padding:var(--space-4)}.page-title,.page-title i{font-size:var(--font-size-2xl)}.users-grid{grid-template-columns:1fr}.user-card-header{padding:var(--space-4)}.user-avatar{width:48px;height:48px;font-size:var(--font-size-base)}.user-actions{flex-direction:column}.modal-content{width:98%;max-height:95vh}.modal-header{padding:var(--space-4) var(--space-4) var(--space-3)}.modal-header-content{gap:var(--space-3)}.modal-icon{width:40px;height:40px}.modal-icon,.modal-title{font-size:var(--font-size-lg)}.modal-subtitle{font-size:var(--font-size-xs)}.modal-body{padding:var(--space-6)}.form-section{gap:var(--space-5)}.modal-footer{padding:var(--space-4) var(--space-6)}.modal-actions{flex-direction:column;gap:var(--space-3)}.modal-actions .btn{width:100%}}@media (max-width:480px){.claims-management-content,.user-edit-content,.user-management-content{padding:var(--space-4) var(--space-3)}.add-claim-form,.admin-toggle-card,.claims-tree{padding:var(--space-4)}.user-card-body{padding:var(--space-3) var(--space-4)}}.admin-toggle-card{animation:fadeIn .5s ease-out}.claim-group-card{animation:slideIn .3s ease-out}.user-card{animation:scaleIn .3s ease-out}.admin-toggle-card:focus-within{outline:2px solid var(--primary-500);outline-offset:2px}.user-card:focus-within{outline:2px solid var(--primary-500);outline-offset:2px}@media print{.claims-management-container:before,.user-edit-container:before,.user-management-container:before{display:none}.admin-toggle-card,.claim-group-card,.user-card{box-shadow:none!important;border:1px solid var(--border-light)!important}.page-actions,.user-actions{display:none!important}}.search-container[data-v-534a356f]{margin-bottom:20px}.search-input-wrapper[data-v-534a356f]{position:relative;display:flex;align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:12px 16px;transition:all .2s ease;box-shadow:0 2px 4px rgba(0,0,0,.05)}.search-input-wrapper[data-v-534a356f]:focus-within{border-color:#667eea;box-shadow:0 4px 12px rgba(102,126,234,.15)}.search-icon[data-v-534a356f]{font-size:1.25rem;color:#9ca3af;margin-right:12px}.search-input[data-v-534a356f]{flex:1;border:none;outline:none;font-size:1rem;color:#1f2937;background:transparent}.search-input[data-v-534a356f]::-moz-placeholder{color:#9ca3af}.search-input[data-v-534a356f]::placeholder{color:#9ca3af}.clear-search-btn[data-v-534a356f]{background:#f3f4f6;border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280;transition:all .2s ease}.clear-search-btn[data-v-534a356f]:hover{background:#e5e7eb;color:#374151}.search-results-info[data-v-534a356f]{margin-top:8px;font-size:.875rem;color:#667eea;font-weight:500}.search-results-info.no-results[data-v-534a356f]{color:#9ca3af}.selection-toolbar[data-v-534a356f]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:16px 24px;border-radius:12px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 12px rgba(102,126,234,.3)}.selection-info[data-v-534a356f]{display:flex;align-items:center;gap:12px;font-weight:500;font-size:1rem}.selection-info i[data-v-534a356f]{font-size:1.5rem}.selection-info-detail[data-v-534a356f]{opacity:.9;font-size:.9rem;margin-left:4px}.selection-actions[data-v-534a356f]{display:flex;gap:12px}.btn-warning[data-v-534a356f]{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#78350f;border:none}.btn-warning[data-v-534a356f]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px rgba(251,191,36,.4);background:linear-gradient(135deg,#fcd34d,#fbbf24)}.slide-down-enter-active[data-v-534a356f],.slide-down-leave-active[data-v-534a356f]{transition:all .3s ease}.slide-down-enter-from[data-v-534a356f],.slide-down-leave-to[data-v-534a356f]{transform:translateY(-20px);opacity:0}.users-table-container[data-v-534a356f]{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);overflow:hidden;border:1px solid #e5e7eb}.users-table[data-v-534a356f]{width:100%;border-collapse:collapse;font-size:.95rem}.users-table thead[data-v-534a356f]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.users-table thead th[data-v-534a356f]{padding:16px 20px;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.users-table thead th.col-checkbox[data-v-534a356f]{width:50px;text-align:center;padding-left:20px}.users-table thead th.col-avatar[data-v-534a356f]{width:70px;text-align:center}.users-table thead th.col-username[data-v-534a356f]{width:auto}.users-table thead th.col-claims[data-v-534a356f]{width:auto;min-width:250px}.users-table thead th.col-actions[data-v-534a356f]{width:150px;text-align:center}.users-table tbody tr[data-v-534a356f]{border-bottom:1px solid #e5e7eb;transition:all .2s ease}.users-table tbody tr[data-v-534a356f]:last-child{border-bottom:none}.users-table tbody tr.user-row[data-v-534a356f]:hover{background-color:#f9fafb;transform:scale(1.001)}.users-table .group-header-row[data-v-534a356f]{border-bottom:none}.users-table .group-header-row[data-v-534a356f]:hover{background-color:transparent;transform:none}.users-table .group-header[data-v-534a356f]{padding:12px 20px;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #5568d3}.users-table .group-header.ungrouped-header[data-v-534a356f]{background:linear-gradient(135deg,#9ca3af,#6b7280);border-bottom:2px solid #6b7280}.users-table .group-header-content[data-v-534a356f]{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#fff;font-weight:600;font-size:1rem}.users-table .group-info-left[data-v-534a356f]{display:flex;align-items:center;gap:10px}.users-table .group-info-left i[data-v-534a356f]{font-size:1.25rem}.users-table .group-edit-btn[data-v-534a356f]{background:hsla(0,0%,100%,.2);border:1px solid hsla(0,0%,100%,.3);border-radius:6px;padding:6px 10px;color:#fff;cursor:pointer;display:flex;align-items:center;gap:4px;font-size:.875rem;transition:all .2s ease}.users-table .group-edit-btn[data-v-534a356f]:hover{background:hsla(0,0%,100%,.3);border-color:hsla(0,0%,100%,.5);transform:translateY(-1px)}.users-table .group-edit-btn i[data-v-534a356f]{font-size:1rem}.users-table .group-name[data-v-534a356f]{font-size:1rem;font-weight:600}.users-table .group-count[data-v-534a356f]{font-size:.875rem;opacity:.9;font-weight:400}.users-table tbody tr.grouped-user[data-v-534a356f]:first-of-type{border-top:none}.users-table tbody td[data-v-534a356f]{padding:16px 20px;vertical-align:middle}.users-table .col-checkbox[data-v-534a356f]{text-align:center;padding-left:20px}.checkbox-input[data-v-534a356f]{width:18px;height:18px;cursor:pointer;accent-color:#667eea}.users-table tbody tr.user-row.selected[data-v-534a356f]{background-color:#eef2ff!important;border-left:4px solid #667eea}.users-table tbody tr.user-row.selected[data-v-534a356f]:hover{background-color:#e0e7ff!important}.users-table .col-avatar[data-v-534a356f]{text-align:center}.users-table .user-avatar[data-v-534a356f]{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;color:#374151;box-shadow:0 2px 4px rgba(0,0,0,.1)}.users-table .user-name[data-v-534a356f]{font-weight:500;color:#1f2937;font-size:.95rem}.users-table .col-claims[data-v-534a356f]{padding-right:24px}.users-table .claims-container[data-v-534a356f]{display:flex;align-items:center}.users-table .claims-list[data-v-534a356f]{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.users-table .claim-badge[data-v-534a356f]{display:inline-flex;align-items:center;padding:4px 10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;font-size:.75rem;font-weight:500;white-space:nowrap;box-shadow:0 1px 3px rgba(102,126,234,.3)}.users-table .no-claims[data-v-534a356f]{color:#9ca3af;font-size:.875rem;font-style:italic}.users-table .col-actions[data-v-534a356f]{text-align:center}.users-table .action-buttons[data-v-534a356f]{display:inline-flex;gap:8px;justify-content:center}.users-table .btn-icon[data-v-534a356f]{width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;cursor:pointer;transition:all .2s ease}.users-table .btn-icon[data-v-534a356f]:hover{background:#f3f4f6;color:#374151;border-color:#d1d5db;transform:translateY(-1px)}.users-table .btn-icon.btn-error[data-v-534a356f]{color:#dc2626}.users-table .btn-icon.btn-error[data-v-534a356f]:hover{background:#fee2e2;border-color:#fecaca;color:#991b1b}.radio-group[data-v-534a356f]{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.radio-option[data-v-534a356f]{display:flex;align-items:center;gap:10px;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease;font-weight:500}.radio-option[data-v-534a356f]:hover{border-color:#667eea;background:#f9fafb}.radio-option input[type=radio][data-v-534a356f]{width:18px;height:18px;cursor:pointer;accent-color:#667eea}.radio-option input[type=radio]:checked+span[data-v-534a356f]{color:#667eea}.form-section[data-v-534a356f]{margin-bottom:0}.modal-actions[data-v-534a356f]{display:flex;gap:12px;width:100%;justify-content:flex-end}.modal-content.modal-small[data-v-534a356f]{max-width:500px}.searchable-dropdown[data-v-534a356f]{position:relative;width:100%}.searchable-dropdown-trigger[data-v-534a356f]{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:8px;background:#fff;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:border-color .2s,box-shadow .2s}.searchable-dropdown-trigger[data-v-534a356f]:hover{border-color:#667eea}.searchable-dropdown-trigger .selected-value[data-v-534a356f]{color:#1f2937;font-weight:500}.searchable-dropdown-trigger .placeholder[data-v-534a356f]{color:#9ca3af}.searchable-dropdown-trigger .dropdown-icon[data-v-534a356f]{transition:transform .2s ease;color:#6b7280}.searchable-dropdown-trigger .dropdown-icon.open[data-v-534a356f]{transform:rotate(180deg)}.searchable-dropdown-menu[data-v-534a356f]{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);z-index:100;max-height:300px;overflow:hidden;display:flex;flex-direction:column}.dropdown-search[data-v-534a356f]{padding:12px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;gap:8px;background:#f9fafb}.dropdown-search .search-icon[data-v-534a356f]{color:#9ca3af;font-size:1.25rem}.dropdown-search-input[data-v-534a356f]{flex:1;border:none;outline:none;background:transparent;font-size:.9375rem;color:#1f2937}.dropdown-search-input[data-v-534a356f]::-moz-placeholder{color:#9ca3af}.dropdown-search-input[data-v-534a356f]::placeholder{color:#9ca3af}.dropdown-options[data-v-534a356f]{overflow-y:auto;max-height:240px}.dropdown-option[data-v-534a356f]{padding:12px 16px;cursor:pointer;display:flex;align-items:center;gap:10px;transition:background-color .15s ease;color:#1f2937}.dropdown-option[data-v-534a356f]:hover{background-color:#f3f4f6}.dropdown-option.selected[data-v-534a356f]{background-color:#eef2ff;color:#667eea;font-weight:500}.dropdown-option i.mdi-account-group[data-v-534a356f]{font-size:1.25rem;color:inherit}.dropdown-option .check-icon[data-v-534a356f]{margin-left:auto;color:#667eea;font-size:1.25rem}.dropdown-no-results[data-v-534a356f]{padding:16px;text-align:center;color:#9ca3af;font-style:italic}@media (max-width:768px){.users-table-container[data-v-534a356f]{overflow-x:auto}.users-table[data-v-534a356f]{min-width:900px}.users-table tbody td[data-v-534a356f],.users-table thead th[data-v-534a356f]{padding:12px 16px}.users-table .claims-list[data-v-534a356f]{max-width:200px}.search-input-wrapper[data-v-534a356f]{padding:10px 14px}.search-input[data-v-534a356f]{font-size:.9375rem}.selection-toolbar[data-v-534a356f]{flex-direction:column;gap:12px;align-items:flex-start}.selection-actions[data-v-534a356f]{width:100%;flex-direction:column}.selection-actions button[data-v-534a356f]{width:100%}}.login-page[data-v-6d87bfcb]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4);position:relative;overflow:hidden}.login-background[data-v-6d87bfcb]{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--primary-600) 0,var(--primary-800) 50%,var(--secondary-800) 100%);z-index:-2}.login-background-shapes[data-v-6d87bfcb]{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden}.shape[data-v-6d87bfcb]{position:absolute;border-radius:var(--radius-full);background:hsla(0,0%,100%,.1);animation:float-6d87bfcb 6s ease-in-out infinite}.shape-1[data-v-6d87bfcb]{width:80px;height:80px;top:20%;left:10%;animation-delay:0s}.shape-2[data-v-6d87bfcb]{width:120px;height:120px;top:60%;right:10%;animation-delay:2s}.shape-3[data-v-6d87bfcb]{width:60px;height:60px;bottom:20%;left:20%;animation-delay:4s}.shape-4[data-v-6d87bfcb]{width:100px;height:100px;top:10%;right:30%;animation-delay:1s}@keyframes float-6d87bfcb{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(180deg)}}.login-container[data-v-6d87bfcb]{width:100%;max-width:480px;z-index:1}.login-card[data-v-6d87bfcb]{background:var(--white);border-radius:var(--radius-3xl);box-shadow:var(--shadow-2xl);padding:var(--space-8);position:relative;overflow:hidden}.login-card[data-v-6d87bfcb]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-500) 0,var(--primary-600) 100%)}.login-header[data-v-6d87bfcb]{text-align:center;margin-bottom:var(--space-8)}.login-logo[data-v-6d87bfcb]{width:80px;height:80px;background:linear-gradient(135deg,var(--primary-500) 0,var(--primary-600) 100%);border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-6);box-shadow:var(--shadow-lg)}.login-logo i[data-v-6d87bfcb]{font-size:var(--font-size-4xl);color:var(--white)}.login-title[data-v-6d87bfcb]{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--space-2)}.login-subtitle[data-v-6d87bfcb]{color:var(--text-secondary);font-size:var(--font-size-base);margin:0}.login-form[data-v-6d87bfcb]{margin-bottom:var(--space-6)}.form-label[data-v-6d87bfcb]{display:flex;align-items:center;gap:var(--space-2)}.form-label i[data-v-6d87bfcb]{color:var(--primary-600);font-size:var(--font-size-lg)}.password-input-group[data-v-6d87bfcb]{position:relative}.password-toggle-btn[data-v-6d87bfcb]{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md);transition:all var(--transition-fast)}.password-toggle-btn[data-v-6d87bfcb]:hover{background-color:var(--gray-100);color:var(--text-primary)}.password-toggle-btn.visible[data-v-6d87bfcb]{color:var(--primary-600)}.login-submit-btn[data-v-6d87bfcb]{width:100%;margin-top:var(--space-4)}.login-submit-btn .spinner[data-v-6d87bfcb]{margin-right:var(--space-2)}@media (max-width:768px){.login-page[data-v-6d87bfcb]{padding:var(--space-2)}.login-card[data-v-6d87bfcb]{padding:var(--space-6);border-radius:var(--radius-2xl)}.login-logo[data-v-6d87bfcb]{width:60px;height:60px}.login-logo i[data-v-6d87bfcb]{font-size:var(--font-size-3xl)}.login-title[data-v-6d87bfcb]{font-size:var(--font-size-2xl)}}