*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;color:#333}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{max-width:1200px;margin:0 auto;padding:20px}.btn{padding:10px 20px;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .2s}.btn-primary{background-color:#efa409;color:#fff}.btn-primary:hover{background-color:#c98a07}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#545b62}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500}.form-group input:not([type=radio]),.form-group textarea,.form-group select{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:16px}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#efa409}.error{color:#dc3545;font-size:14px;margin-top:5px}.card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.loading{display:flex;justify-content:center;align-items:center;min-height:200px}.nav{background:#fff;box-shadow:0 2px 4px #0000001a;padding:15px 0;margin-bottom:30px}.nav-content{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center}.nav-links{display:flex;gap:20px;align-items:center}.nav-links a{text-decoration:none;color:#333;font-weight:500}.nav-links a:hover{color:#efa409}.nav-link-button{background:none;border:none;padding:0;font:inherit;font-weight:500;color:#333;cursor:pointer}.nav-link-button:hover{color:#efa409}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.nav-hamburger{display:none;flex-direction:column;justify-content:space-around;width:30px;height:24px;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001}.hamburger-line{width:100%;height:3px;background-color:#333;border-radius:2px;transition:all .3s ease;transform-origin:center}.hamburger-line.open:nth-child(1){transform:translateY(7.5px) rotate(45deg)}.hamburger-line.open:nth-child(2){opacity:0}.hamburger-line.open:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}.nav-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:999}.nav-user-greeting{color:#666}@media(max-width:768px){.nav-hamburger{display:flex}.nav-overlay{display:block}.nav-links{position:fixed;top:0;right:-280px;width:280px;height:100vh;background:#fff;flex-direction:column;padding:80px 20px 20px;gap:0;box-shadow:-2px 0 10px #0000001a;transition:right .3s ease;z-index:1000;overflow-y:auto}.nav-links-open{right:0}.nav-links a,.nav-links span,.nav-links button{padding:15px 0;border-bottom:1px solid #eee;width:100%;text-align:left}.nav-links a{display:block}.nav-links button{margin-top:10px;text-align:center}.container{padding:15px}.grid{grid-template-columns:1fr;gap:15px}.card{padding:15px}.btn{min-height:44px;padding:12px 20px}.form-group input:not([type=radio]),.form-group textarea,.form-group select{min-height:44px;font-size:16px}}@media(max-width:480px){.nav-content{padding:0 15px}.container{padding:10px}h1{font-size:1.5rem}h2{font-size:1.25rem}}.planner-print{display:none}@media print{.nav,footer,.nav-hamburger,.planner-controls,.planner-actions,.planner-screen{display:none!important}body{background:#fff}.planner-print{display:block}.planner-print-title{font-size:14pt;margin:0 0 8px}.planner-print-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:8pt}.planner-print-table th,.planner-print-table td{border:1px solid #000;padding:2px 3px;vertical-align:top;text-align:left;overflow-wrap:anywhere;white-space:normal}.planner-print-table th{background:#eee}.planner-print-child{font-weight:700;width:12%}.planner-print-weekrow th{background:#ddd;font-weight:700}.planner-print-table tbody+tbody .planner-print-weekrow th{border-top:3px solid #000}.planner-print-event{font-style:italic}.planner-print-table tr{break-inside:avoid}}
