:root{--primary-color: #3d3d3d;--primary-hover-color: #000000;--background-color: #f4f1ea;--panel-background: #fff;--text-color: #1a1a1a;--text-light-color: #6c757d;--border-color: #1a1a1a;--error-color: #9d2b2b;--vat-color: #b58900;--ct-color: #268bd2;--custom-color: #859900;--due-soon-color: #cb4b16;--overdue-color: var(--error-color);--filed-color: #4CAF50;--shadow: none;--border-radius: 2px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Roboto Mono,monospace;background-color:var(--background-color);color:var(--text-color);line-height:1.6}#root{display:flex;flex-direction:column;align-items:center;padding:2rem;min-height:100vh}.app-container{width:100%;max-width:1200px;background-color:var(--panel-background);border-radius:var(--border-radius);border:2px solid var(--border-color);box-shadow:6px 6px 0 var(--border-color)}header{background-color:var(--panel-background);color:var(--text-color);padding:1.5rem 2rem;border-bottom:2px solid var(--border-color)}.header-content{display:flex;align-items:center;justify-content:center;gap:1.5rem}.header-logo{height:50px}header h1{font-family:Playfair Display,serif;font-weight:700;font-size:2.5rem;text-transform:uppercase;letter-spacing:2px}.main-content{display:grid;grid-template-columns:350px 1fr;gap:2rem;padding:2rem}.panel{display:flex;flex-direction:column;gap:1.5rem}.panel-section{border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;background-color:var(--background-color)}.panel-section h3{margin-bottom:1rem;font-family:Playfair Display,serif;font-size:1.5rem;font-weight:700;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.file-uploader,.custom-reminder-form{display:flex;flex-direction:column;gap:.75rem}.file-input-label,.btn{padding:.75rem 1rem;background-color:var(--primary-color);color:var(--background-color);border:1px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;font-weight:500;text-align:center;text-transform:uppercase;letter-spacing:1px;box-shadow:2px 2px 0 var(--border-color);transition:all .1s ease-out}.file-input-label:hover,.btn:hover{background-color:var(--primary-hover-color);transform:translate(2px,2px);box-shadow:none}.file-input{display:none}.status-text{font-size:.9rem;color:var(--text-light-color);text-align:center;min-height:20px}.spinner{border:4px solid rgba(255,255,255,.2);width:20px;height:20px;border-radius:50%;border-left-color:var(--background-color);animation:spin 1s ease infinite;margin:0 auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}input[type=text],input[type=date]{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius);font-family:Roboto Mono,monospace;font-size:1rem;background-color:var(--panel-background)}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(.2)}.error-message{background-color:#f8d7da;color:var(--error-color);border:1px solid var(--error-color);padding:1rem;border-radius:var(--border-radius);margin-top:1rem;text-align:center;cursor:pointer}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.calendar-header h2{font-family:Playfair Display,serif;font-size:1.8rem;font-weight:700}.calendar-nav button{background:var(--panel-background);border:1px solid var(--border-color);border-radius:var(--border-radius);width:40px;height:40px;cursor:pointer;color:var(--text-color);font-size:1.5rem}.calendar-nav button:hover{background-color:#e9ecef}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:0;border-top:1px solid var(--border-color);border-left:1px solid var(--border-color)}.calendar-day-name{font-weight:500;text-align:center;color:var(--text-light-color);font-size:.9rem;padding:.5rem 0;border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background-color:var(--background-color)}.calendar-day-name:last-child{border-right:1px solid var(--border-color)}.calendar-day{position:relative;min-height:100px;border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);padding:.5rem;font-size:.9rem;transition:background-color .2s;background-color:var(--panel-background)}.calendar-day.is-clickable{cursor:pointer}.calendar-day.is-clickable:hover,.calendar-day.is-clickable:focus{background-color:#e9e6e0;outline:none}.calendar-day.is-selected{outline:2px solid var(--primary-color);outline-offset:-2px;background-color:#e9e6e0}.calendar-day.other-month{background-color:var(--background-color);color:var(--text-light-color);cursor:default}.calendar-day.is-today .day-number{background-color:var(--text-color);color:var(--background-color);border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-weight:500}.event-dots{display:flex;gap:4px;margin-top:4px;flex-wrap:wrap}.event-dot{width:8px;height:8px;border-radius:var(--border-radius);border:1px solid var(--border-color)}.event-dot.vat{background-color:var(--vat-color)}.event-dot.ct{background-color:var(--ct-color)}.event-dot.custom{background-color:var(--custom-color)}.day-details-section ul,.event-list ul{list-style-type:none;max-height:250px;overflow-y:auto;padding-right:10px}.day-details-section p,.event-list p{color:var(--text-light-color);padding:.75rem}.day-details-section li p,.event-list li p{padding:0}.event-item{display:flex;align-items:center;gap:1rem;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius);margin-bottom:.5rem;background-color:var(--panel-background)}.event-item.due-soon{background-color:#fdf5e6}.event-item.overdue{background-color:#fbe6e6;text-decoration:line-through}.event-type-indicator{width:12px;height:12px;border:1px solid var(--border-color);border-radius:var(--border-radius);flex-shrink:0}.event-type-indicator.vat{background-color:var(--vat-color)}.event-type-indicator.ct{background-color:var(--ct-color)}.event-type-indicator.custom{background-color:var(--custom-color)}.event-details{display:flex;justify-content:space-between;width:100%;align-items:center;gap:1rem}.event-title{flex-grow:1;font-size:.9rem}.event-meta{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.status-badge{font-size:.75rem;font-weight:500;padding:.2rem .6rem;border-radius:var(--border-radius);color:var(--background-color);background-color:var(--text-color);white-space:nowrap;text-transform:uppercase}.status-badge.due-soon{background-color:var(--due-soon-color)}.status-badge.overdue{background-color:var(--overdue-color)}.status-badge.pending{background-color:var(--text-light-color)}.status-badge.filed{background-color:var(--filed-color)}.event-details .date{font-weight:500;color:var(--text-light-color);font-size:.9rem;white-space:nowrap}.entity-table-section .table-wrapper{overflow-x:auto}.entity-table{width:100%;border-collapse:collapse;font-size:.9rem}.entity-table th,.entity-table td{padding:.75rem;text-align:left;border:1px solid var(--border-color)}.entity-table th{font-family:Playfair Display,serif;background-color:var(--panel-background);font-size:1rem;font-weight:700}.entity-table .btn.btn-small{padding:.25rem .5rem;font-size:.8rem;text-transform:none;letter-spacing:0;box-shadow:1px 1px 0 var(--border-color)}.entity-table .btn.btn-small:hover{transform:translate(1px,1px)}@media (max-width: 992px){.main-content{grid-template-columns:1fr}}@media (max-width: 768px){#root{padding:0}.app-container{border:none;box-shadow:none;border-radius:0}.main-content,.panel-section{padding:1rem}header h1{font-size:1.8rem}.calendar-day{min-height:80px;padding:4px;font-size:.8rem}.calendar-day .day-number{width:24px;height:24px}.event-details{flex-wrap:wrap}.entity-table thead{display:none}.entity-table,.entity-table tbody,.entity-table tr,.entity-table td{display:block;width:100%}.entity-table tr{margin-bottom:1rem;border:1px solid var(--border-color);border-radius:var(--border-radius)}.entity-table td{text-align:right;position:relative;border:none;border-bottom:1px solid #e9e6e0}.entity-table td:last-child{border-bottom:none}.entity-table td:before{content:attr(data-label);position:absolute;left:.75rem;font-weight:700;text-align:left}}
