@tailwind base;@tailwind components;@tailwind utilities;body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f5f5f5;color:#333;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6}.App{align-items:center;display:flex;justify-content:center;min-height:100vh}.signin-container,.signup-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:400px;padding:2rem;width:100%}h2{color:#2c3e50;margin-bottom:1.5rem;text-align:center}.form-group{margin-bottom:1.2rem}.form-group.legal-check input[type=checkbox]{margin-right:6px;width:auto}label{display:block;font-weight:500;margin-bottom:.5rem}input,select{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:.8rem;width:100%}input:focus,select:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .8rem center;background-repeat:no-repeat;background-size:1em}button,select{cursor:pointer}button{background-color:#4f00b3;border:none;border-radius:4px;color:#fff;font-size:1rem;margin-top:1rem;padding:.8rem;transition:background-color .3s;width:100%}button:hover{background-color:#3b0086}button:disabled{background-color:#95a5a6;cursor:not-allowed}p{margin-top:1.5rem;text-align:center}a{color:#4f00b3;text-decoration:none}a:hover{text-decoration:underline}.error-message{background-color:#f8d7da;color:#721c24}.error-message,.success-message{border-radius:4px;margin-bottom:1rem;padding:.8rem;text-align:center}.success-message{background-color:#d4edda;color:#155724}body{background-color:#f8fafc;font-family:Inter,sans-serif}#dashboard-layout{display:flex;min-height:1024px}#sidebar{background-color:#fff;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;display:flex;flex-direction:column;height:100%;position:fixed;width:16rem}#main-content{flex:1 1;margin-left:16rem}#header{align-items:center;background-color:#fff;border-bottom:1px solid #e2e8f0;display:flex;height:5rem;justify-content:space-between;padding-left:2.5rem;padding-right:2.5rem;position:sticky;top:0;z-index:110}#dashboard-body{padding:2.5rem}#sidebar-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;height:5rem;justify-content:center}#sidebar-header h1{align-items:center;color:#4f00b3;display:flex;font-size:1.5rem;font-weight:700}#sidebar-header svg{margin-right:.5rem}#sidebar-nav{flex-grow:1;padding:1.5rem}#sidebar-nav ul{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}#sidebar-nav li span{align-items:center;border-radius:.5rem;cursor:pointer;display:flex;padding:.5rem;transition:all .2s}#sidebar-nav li>span.active{background-color:#4f00b3;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;color:#fff}#sidebar-nav li>span:not(.active){color:#475569}#sidebar-nav li>span:not(.active):hover{background-color:#f4ecff;color:#4f00b3}#sidebar-nav svg{font-size:1.125rem;width:1.5rem}#sidebar-nav span span{font-weight:500;margin-left:.75rem}#header h2{color:#1e293b;font-size:1.5rem;font-weight:700;margin:0}#header .logout-button{align-items:center;background-color:#fee2e2;border:none;border-radius:.5rem;color:#dc2626;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin:0;padding:.5rem 1rem;transition:background-color .2s;width:auto}#header .logout-button:hover{background-color:#fecaca}#welcome-banner{align-items:center;background-color:#4f00b3;border-radius:1rem;box-shadow:0 10px 15px -3px #c4b5fd80,0 4px 6px -4px #c4b5fd80;display:flex;justify-content:space-between;margin-bottom:2.5rem;overflow:hidden;padding:2rem;position:relative}#welcome-banner>div:first-child{z-index:10}#welcome-banner h3{color:#fff;font-size:1.875rem;font-weight:700;margin-bottom:.5rem}#welcome-banner p{color:#e9d5ff;margin:0 150px 0 0;max-width:40rem;text-align:left}@media (max-width:768px){#welcome-banner p{margin-right:0}}#welcome-banner>div:last-child{bottom:-5rem;opacity:.1;position:absolute;right:-5rem}#welcome-banner>div:last-child svg{color:#fff;font-size:200px;transform:rotate(12deg)}#stays-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}#stays-header h4{color:#334155;font-size:1.25rem;font-weight:600}#stays-header button{align-items:center;background-color:#feae17;border:none;border-radius:.5rem;box-shadow:0 4px 6px -1px #fde68a80,0 2px 4px -2px #fde68a80;color:#4f00b3;cursor:pointer;display:flex;font-weight:700;gap:.5rem;margin:0;padding:.75rem 1.25rem;transition:all .3s;width:auto}#stays-header button:hover{background-color:#fbbd23;transform:scale(1.05)}#stays-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(1,minmax(0,1fr))}@media (min-width:768px){#stays-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){#stays-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.stay-card{background-color:#fff;border:1px solid #f1f5f9;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;cursor:pointer;padding:1.5rem;transition:all .3s}.stay-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;transform:translateY(-.25rem)}.stay-card>div:first-child{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:1rem}.stay-card h5{color:#4f00b3;font-size:1.125rem;font-weight:700;line-height:1.4;overflow-wrap:anywhere}.stay-card>div:nth-child(2){color:#475569;display:flex;flex-direction:column;font-size:.875rem;gap:.625rem;margin-bottom:1.5rem}.stay-card>div:nth-child(2) p{align-items:baseline;display:flex;gap:.5rem;margin:0;text-align:left}.stay-card>div:nth-child(2) svg{align-self:center;color:#64748b;flex-shrink:0;width:1rem}.stay-card>div:nth-child(2) strong{color:#1e293b;font-weight:600}.stay-card>span{align-items:center;background-color:#f4ecff;border-radius:.5rem;color:#4f00b3;display:flex;font-weight:600;justify-content:center;padding:.75rem 0;transition:background-color .2s;width:100%}.stay-card>span:hover{background-color:#e9d5ff}.stay-card>span svg{font-size:.75rem;margin-left:.5rem}.add-unit-form{background-color:#fff;border-radius:1rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;margin-bottom:2.5rem;padding:2rem}.add-unit-form h4{color:#334155;font-size:1.25rem;font-weight:600;margin-bottom:1.5rem}.add-unit-form form{display:flex;flex-direction:column;gap:1.5rem}.add-unit-form form>div:not(.form-buttons){grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr}@media (min-width:768px){.add-unit-form form>div:not(.form-buttons){grid-template-columns:repeat(2,1fr)}}.add-unit-form label{color:#475569;display:block;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.add-unit-form input,.add-unit-form select{border:1px solid #cbd5e1;border-radius:.5rem;padding:.5rem 1rem;width:100%}.add-unit-form input:focus,.add-unit-form select:focus{border-color:#4f00b3;box-shadow:0 0 0 2px #c4b5fd;outline:2px solid #0000;outline-offset:2px}.add-unit-form input:disabled{background-color:#f1f5f9}.form-buttons{display:flex;gap:1rem;justify-content:flex-end}.form-buttons button{border:none;border-radius:.5rem;cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1.25rem;transition:background-color .2s}.form-buttons button[type=button]{background-color:#f1f5f9;color:#475569}.form-buttons button[type=button]:hover{background-color:#e2e8f0}.form-buttons button[type=submit]{background-color:#4f00b3;color:#fff}.form-buttons button[type=submit]:hover{background-color:#3b0086}.form-buttons button:disabled{background-color:#94a3b8;cursor:not-allowed}#dashboard-container{width:100%}.loading-container{color:#475569;padding:2.5rem;text-align:center}.no-units{background-color:#fff;border:1px dashed #cbd5e1;border-radius:.5rem;color:#475569;margin:0;padding:1.25rem;text-align:left}.status-badge{border-radius:9999px;flex-shrink:0;font-size:.75rem;font-weight:600;padding:.25rem .75rem;white-space:nowrap}.status-red{background-color:#fee2e2;color:#b91c1c}.status-orange{background-color:#ffedd5;color:#c2410c}.status-gray{background-color:#f1f5f9;color:#475569}.status-green{background-color:#dcfce7;color:#166534}.sidebar-toggle{background:none;border:none;color:#4f00b3;cursor:pointer;display:none;font-size:1.5rem;margin:0;min-height:44px;min-width:44px;padding:.5rem;width:auto}.sidebar-toggle:hover{background:none}.sidebar-overlay{background-color:#00000080;display:none;height:100%;left:0;position:fixed;top:0;width:100%;z-index:99}@media (max-width:768px){#sidebar{max-width:85vw;transform:translateX(-100%);transition:transform .3s ease-in-out;z-index:120}.sidebar-overlay{z-index:115}#header{gap:.5rem;height:4rem;padding-left:.75rem;padding-right:1rem}#header>div:nth-child(2){flex:1 1;min-width:0}#header h2{font-size:1.125rem;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}#dashboard-body{padding:1rem}#welcome-banner{margin-bottom:1.5rem;padding:1.25rem}#welcome-banner h3{font-size:1.375rem;line-height:1.3}#stays-header button{justify-content:center;width:100%}#stays-grid{gap:1rem}#sidebar.open{transform:translateX(0)}#main-content{margin-left:0}#sidebar.open~.sidebar-overlay,.sidebar-toggle{display:block}}@media (min-width:769px){.sidebar-toggle{display:none}}@media (max-width:480px){#header .logout-button span{display:none}#header .logout-button{padding:.625rem}}.expected-children{color:#334155}.expected-children h4{text-align:left}.expected-children p{margin:0 0 .75rem;text-align:left}.expected-help{color:#475569;font-size:.925rem}.expected-summary{color:#1e293b;font-weight:600}.expected-grid{border-collapse:collapse;margin:8px 0}.expected-grid th{color:#334155;font-size:.875rem;font-weight:600;padding:6px 4px;text-align:left}.expected-grid td{border:1px solid #cbd5e1;padding:1px}.expected-grid input{background:#0000;border:0;border-radius:0;box-sizing:border-box;font-size:.95rem;min-width:160px;padding:6px;width:100%}.expected-grid input:focus{box-shadow:none;outline:2px solid #4f00b3;outline-offset:-2px}.expected-grid td.expected-rownum{border:0;color:#64748b;padding-right:6px;text-align:right}.expected-grid td:last-child{border:0;padding-left:6px}.expected-grid td button{background:#fff;border:1px solid #b91c1c;border-radius:4px;color:#b91c1c;font-size:.85rem;margin:0;padding:4px 8px;width:auto}.expected-grid td button:hover{background:#fee2e2}.expected-grid input.expected-error{background:#fee2e2;box-shadow:inset 0 0 0 2px #b91c1c}.expected-duplicate input{background:#ffedd5}.expected-errors{color:#b91c1c;margin:4px 0 .75rem;padding-left:20px}.expected-warning{color:#b45309;font-weight:600}.expected-grid-wrapper{overflow-x:auto}.expected-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin:.75rem 0}.expected-children .btn-outline{background:#fff;border:1px solid #4f00b3;border-radius:.5rem;color:#4f00b3;font-size:.9rem;font-weight:600;margin:0;padding:.5rem 1rem;width:auto}.expected-children .btn-outline:hover{background:#f4ecff}.expected-info .btn-outline{margin-left:.5rem}.expected-children .btn-send{border-radius:.5rem;font-weight:700;margin:0;padding:.75rem 1.5rem;width:auto}#edit-unit-section{padding:2.5rem}#edit-unit-container{margin-left:auto;margin-right:auto;max-width:56rem}#unit-details-card{background-color:#fff;border:1px solid #f1f5f9;border-radius:1rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;padding:2rem}@media (min-width:768px){#unit-details-card{padding:3rem}}#unit-details-card h3{color:#1e293b;font-size:1.875rem;font-weight:700;margin-bottom:2.5rem;text-align:center}#unit-form{display:flex;flex-direction:column;gap:1.5rem}#unit-form label{color:#475569;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}#unit-form input,#unit-form select{border:1px solid #cbd5e1;border-radius:.5rem;padding:.75rem 1rem;transition:box-shadow .2s;width:100%}#unit-form input:focus,#unit-form select:focus{border-color:#4f00b3;box-shadow:0 0 0 2px #4f00b380;outline:2px solid #0000;outline-offset:2px}.select-wrapper{position:relative}.select-wrapper select{appearance:none;-webkit-appearance:none;background-color:#fff}.select-wrapper svg{color:#64748b;font-size:.75rem;pointer-events:none;position:absolute;right:1rem;top:50%;transform:translateY(-50%)}.form-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr}@media (min-width:768px){.form-grid{grid-template-columns:repeat(2,1fr)}}.date-wrapper{position:relative}.date-wrapper svg{color:#64748b;pointer-events:none;position:absolute;right:1rem;top:50%;transform:translateY(-50%)}#unit-form .form-buttons{display:flex;flex-direction:column;gap:1rem;padding-top:1rem}@media (min-width:768px){#unit-form .form-buttons{flex-direction:row}}#unit-form .form-buttons button{border:none;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;color:#fff;cursor:pointer;flex:1 1;font-weight:700;padding:.75rem 1.5rem;transition:background-color .3s;width:100%}#unit-form .form-buttons .btn-primary{background-color:#4f00b3}#unit-form .form-buttons .btn-primary:hover{background-color:#3b0086}#unit-form .form-buttons .btn-danger{background-color:#ef4444}#unit-form .form-buttons button{margin:0}#unit-form .form-buttons .btn-danger{background-color:#dc2626}#unit-form .form-buttons .btn-danger:hover{background-color:#b91c1c}#unit-form .form-buttons .btn-secondary{background-color:#fff;border:1px solid #cbd5e1;box-shadow:none;color:#334155}#unit-form .form-buttons .btn-secondary:hover{background-color:#f1f5f9}#unit-form .form-buttons button:disabled{background-color:#94a3b8;cursor:not-allowed}.section-toggle{align-items:center;background:none;border:none;border-radius:0;color:#1e293b;cursor:pointer;display:flex;font-size:1.125rem;font-weight:700;justify-content:space-between;margin:0;padding:.75rem 0;width:100%}.section-toggle:hover{background:none;color:#4f00b3}.delete-device-btn:focus-visible,.link-container button:focus-visible,.section-toggle:focus-visible,.unit-tabs button:focus-visible{outline:2px solid #4f00b3;outline-offset:2px}#unit-details-card hr{border:0;border-top:1px solid #e2e8f0;margin:2.5rem 0}#unit-form hr{margin:.5rem 0 0}#access-section{display:flex;flex-direction:column;gap:2rem}#access-section h4{color:#1e293b;font-size:1.25rem;font-weight:700;margin-bottom:1rem}#access-section ul{color:#475569;list-style:disc;padding-left:1.5rem}#access-section h4{text-align:left}#parent-link-section p{color:#64748b;font-size:.875rem;margin-bottom:1rem}.link-container{align-items:center;background-color:#f1f5f9;border-radius:.5rem;display:flex;padding:.75rem}.link-container span{color:#4f00b3;cursor:pointer;flex-grow:1;font-size:.875rem;word-break:break-all}.link-container button{background:none;border:none;border-radius:.375rem;color:#475569;cursor:pointer;flex-shrink:0;margin:0 0 0 1rem;padding:.5rem;width:auto}.link-container button:hover{background-color:#e2e8f0;color:#4f00b3}#access-section .copy-success{color:#15803d;font-weight:600;margin:.5rem 0 0}#access-section .copy-error{color:#b91c1c;font-weight:600;margin:.75rem 0 0}#qr-code-section{text-align:center}#qr-code-section>div{display:flex;justify-content:center;margin-bottom:1.5rem}#qr-code-section button{background-color:#feae17;border:none;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;color:#1e293b;cursor:pointer;font-weight:700;margin:0;padding:.75rem 2rem;transition:background-color .3s;width:100%}#animator-link-section .btn-primary{border-radius:.5rem;font-weight:700;padding:.75rem 1.5rem;width:auto}@media (min-width:768px){#qr-code-section button{width:auto}}#qr-code-section button:hover{background-color:#f59e0b}.form-buttons .btn-primary{background-color:#4f00b3}.form-buttons .btn-primary:hover{background-color:#3b0086}#access-section .devices-list,.devices-list{list-style:none;padding:0}.devices-list li{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:space-between;padding:.75rem 0}.device-name{color:#1e293b;font-weight:600}.device-meta{color:#64748b;display:block;font-size:.875rem}.delete-device-btn{background:none;border:none;border-radius:.375rem;color:#dc2626;cursor:pointer;flex-shrink:0;margin:0;padding:.5rem;width:40px}.delete-device-btn:hover{background-color:#fee2e2;color:#b91c1c}.unit-tabs{border-bottom:2px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:.25rem;margin:2.5rem 0 1.5rem}.unit-tabs button{background:none;border:none;border-bottom:3px solid #0000;border-radius:0;color:#64748b;cursor:pointer;flex-shrink:0;font-size:.95rem;font-weight:600;margin:0 0 -2px;padding:.75rem 1rem;white-space:nowrap;width:auto}.unit-tabs button:hover{background:none;color:#4f00b3}.unit-tabs button.active{border-bottom-color:#4f00b3;color:#4f00b3}.tab-empty{background-color:#f8fafc;border:1px dashed #cbd5e1;border-radius:.5rem;color:#475569;padding:1rem}.tab-explain{background-color:#f5f0ff;border-left:4px solid #4f00b3;border-radius:.5rem;color:#334155;margin-bottom:1.5rem;padding:1rem 1.25rem}.tab-explain p{margin-bottom:.75rem}.tab-explain p:last-child{margin-bottom:0}#access-section [role=tabpanel]>p,.tab-explain p{margin-top:0;text-align:left}#access-section [role=tabpanel]>p{margin-bottom:1rem}#animator-link-section p,#parent-link-section p{margin-top:0;text-align:left}@media (max-width:767px){#edit-unit-section{padding:1rem}#unit-details-card{padding:1.25rem}#unit-details-card h3{font-size:1.5rem;margin-bottom:1.5rem}.unit-tabs{border-bottom:none;flex-direction:column;gap:.5rem;margin-top:1.5rem}.unit-tabs button{border:1px solid #e2e8f0;border-radius:.5rem;margin:0;padding:.75rem 1rem;text-align:left;white-space:normal}.unit-tabs button.active{border-color:#4f00b3}.unit-tabs button.active,.unit-tabs button.active:hover{background-color:#4f00b3;color:#fff}#unit-form .form-buttons{padding-top:.5rem}}#main-content{min-width:0}
/*# sourceMappingURL=main.35f9cb3f.css.map*/