:root{--color-bg:#f2efe9;--color-text:#2a2a2a;--color-text-muted:#5a5a5a;--color-accent:#2a2a2a;--color-accent-light:#d4cdbc;--color-border:#0000001a;--color-card:#fff;--font-serif:"Playfair Display", serif;--font-sans:"Montserrat", sans-serif;--font-script:"Great Vibes", cursive}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);min-height:100vh;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:500;line-height:1.2}.script{font-family:var(--font-script);font-size:2.5em;line-height:1}a{color:inherit;text-decoration:none;transition:opacity .2s}a:hover{opacity:.7}.container{max-width:1200px;margin:0 auto;padding:2rem}.card{background:var(--color-card);border-radius:12px;padding:2rem;box-shadow:0 4px 20px #0000000d}.btn{font-family:var(--font-sans);letter-spacing:1px;text-transform:uppercase;cursor:pointer;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.9rem;font-weight:500;transition:all .3s;display:inline-flex}.btn-primary{background-color:var(--color-text);color:#fff}.btn-primary:hover{background-color:#000;transform:translateY(-1px)}.btn-outline{color:var(--color-text);border-color:var(--color-text);background-color:#0000}.btn-outline:hover{background-color:var(--color-text);color:#fff}.input-group{margin-bottom:1.5rem}.input-group label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:block}.input,.textarea,.select{width:100%;font-family:var(--font-sans);border:1px solid var(--color-border);background-color:#fff;border-radius:4px;padding:.75rem;font-size:1rem;transition:border-color .2s}.input:focus,.textarea:focus,.select:focus{border-color:var(--color-accent);outline:none}.checkbox-label{cursor:pointer;align-items:center;gap:.5rem;display:flex}.checkbox-label input[type=checkbox]{width:1.2rem;height:1.2rem;accent-color:var(--color-text);cursor:pointer}.table-container{background:var(--color-card);border-radius:8px;overflow-x:auto;box-shadow:0 2px 10px #00000005}.table{border-collapse:collapse;text-align:left;width:100%}.table th,.table td{border-bottom:1px solid var(--color-border);padding:1rem}.table th{text-transform:uppercase;letter-spacing:1px;color:var(--color-text-muted);white-space:nowrap;font-size:.8rem;font-weight:600}.table tbody tr{transition:background-color .2s}.table tbody tr:hover{background-color:var(--color-bg);cursor:pointer}.badge{text-transform:uppercase;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.badge-green{color:#137333;background:#e6f4ea}.badge-red{color:#c5221f;background:#fce8e6}.badge-gray{color:#5f6368;background:#f1f3f4}.admin-layout{min-height:100vh;display:flex}.admin-sidebar{background:var(--color-card);border-right:1px solid var(--color-border);flex-direction:column;width:250px;padding:2rem;display:flex}.admin-nav{flex-direction:column;gap:.5rem;margin-top:2rem;display:flex}.admin-nav-link{border-radius:4px;align-items:center;gap:.75rem;padding:.75rem 1rem;font-weight:500;display:flex}.admin-nav-link:hover,.admin-nav-link.active{background-color:var(--color-bg)}.admin-content{flex:1;padding:2rem;overflow-y:auto}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background:var(--color-bg);border-radius:12px;width:100%;max-width:600px;max-height:90vh;padding:2rem;overflow-y:auto}.login-wrapper{justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-card{text-align:center;width:100%;max-width:400px}.login-title{margin-bottom:.5rem;font-size:3rem}.invite-wrapper{text-align:center;max-width:800px;margin:0 auto;padding:4rem 2rem}.invite-title{margin-bottom:1rem;font-size:4rem}.invite-subtitle{margin-bottom:3rem;font-size:1.2rem}.invite-form{background:var(--color-card);text-align:left;border-radius:12px;padding:3rem;box-shadow:0 10px 30px #0000000d}.invite-section{border-bottom:1px dashed var(--color-border);margin-bottom:2rem;padding-bottom:2rem}.invite-section:last-child{border-bottom:none}.invite-section-title{margin-bottom:1rem;font-size:1.5rem}
