*{box-sizing:border-box}.news-app{min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden;width:100%;max-width:100vw}.news-header{background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.1);box-shadow:0 4px 16px #0000004d;position:sticky;top:0;z-index:100;animation:fadeInDown .8s ease-out;width:100%;max-width:100%}.header-top{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;gap:1.5rem}.header-left{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.sidebar-toggle{display:none;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#d4b896;padding:.5rem;border-radius:8px;cursor:pointer;transition:all .3s ease}.sidebar-toggle:hover{background:#d4b89633;transform:scale(1.05)}.home-link{display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#d4b896;padding:.5rem;border-radius:8px;cursor:pointer;text-decoration:none;transition:all .3s ease}.home-link:hover{background:#d4b89633;transform:scale(1.05)}.header-logo{width:48px;height:48px;border-radius:12px;box-shadow:0 4px 12px #d4b8964d;transition:transform .3s ease;animation:pulse 3s ease-in-out infinite}.header-logo:hover{transform:scale(1.05) rotate(2deg)}.header-title h1{font-size:1.75rem;background:linear-gradient(135deg,#d4b896,#9b7d54,#d4b896);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:800;letter-spacing:-.02em;margin:0;animation:shimmer 3s ease-in-out infinite}.header-subtitle{color:#94a3b8;font-size:.875rem;font-weight:400;margin:.25rem 0 0}.header-actions{display:flex;align-items:center;gap:.75rem}.refresh-btn,.lang-toggle{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#e2e8f0;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .3s ease;white-space:nowrap}.refresh-btn:hover,.lang-toggle:hover{background:#d4b89633;border-color:#d4b89666;transform:translateY(-2px)}.refresh-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.lang-toggle.active{background:#d4b89633;border-color:#d4b89666}.spinning{animation:spin 1s linear infinite}.stats-bar{display:flex;gap:1rem;padding:1rem 2rem;background:#0003;border-top:1px solid rgba(255,255,255,.1);overflow-x:auto;scrollbar-width:thin;scrollbar-color:rgba(212,184,150,.3) transparent}.stats-bar::-webkit-scrollbar{height:4px}.stats-bar::-webkit-scrollbar-track{background:transparent}.stats-bar::-webkit-scrollbar-thumb{background:#d4b8964d;border-radius:2px}.stat-card{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;min-width:140px;transition:all .3s ease}.stat-card:hover{background:#ffffff14;transform:translateY(-2px)}.stat-icon{color:#d4b896;flex-shrink:0}.stat-content{display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.75rem;color:#94a3b8;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1.5rem;font-weight:700;color:#e2e8f0}.stat-critical .stat-value{color:#ef4444}.stat-warning .stat-value{color:#f59e0b}.stat-success .stat-value{color:#10b981}.news-main{display:flex;flex:1;min-height:0;position:relative;width:100%;max-width:100%;overflow:hidden}.sidebar-overlay{display:none}@media (max-width: 968px){.sidebar-overlay{display:block;position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:150;animation:fadeIn .3s ease-out;cursor:pointer}.news-sidebar.closed+.sidebar-overlay{display:none}}.news-sidebar{width:320px;background:#ffffff08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid rgba(255,255,255,.1);overflow-y:auto;transition:transform .3s ease;animation:fadeInUp .6s ease-out .1s both;position:relative;transform:translate(0)}@media (max-width: 968px){.news-sidebar{position:fixed;top:0;left:0;bottom:0;z-index:200;box-shadow:4px 0 16px #0000004d;width:85%;max-width:320px;animation:none}.news-sidebar.closed{transform:translate(-100%)}.news-sidebar.open{transform:translate(0)}}.sidebar-content{padding:1.5rem;position:relative}.sidebar-close-btn{display:none;position:absolute;top:1rem;right:1rem;background:#ef44444d;border:1px solid rgba(239,68,68,.6);color:#ef4444;padding:.75rem;border-radius:8px;cursor:pointer;transition:all .3s ease;z-index:250;align-items:center;justify-content:center;pointer-events:auto;touch-action:manipulation}.sidebar-close-btn:hover{background:#ef444480;transform:scale(1.05);border-color:#ef4444}.sidebar-close-btn:active{background:#ef444499;transform:scale(.95)}@media (max-width: 968px){.sidebar-close-btn{display:flex!important;align-items:center;justify-content:center}.sidebar-content{padding-top:4rem}}.sidebar-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-section:last-child{border-bottom:none}.sidebar-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:700;color:#d4b896;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.filter-grid{display:flex;flex-direction:column;gap:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-label{font-size:.875rem;font-weight:500;color:#cbd5e1}.filter-select{padding:.625rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#e2e8f0;font-size:.875rem;cursor:pointer;transition:all .3s ease}.filter-select:hover{background:#ffffff14;border-color:#d4b89666}.filter-select:focus{outline:none;border-color:#d4b896;box-shadow:0 0 0 3px #d4b8961a}.stog-summary{display:flex;flex-direction:column;gap:.75rem}.stog-stat{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#ffffff0d;border-radius:8px;transition:all .3s ease}.stog-stat:hover{background:#ffffff14}.stog-label{font-size:.875rem;color:#cbd5e1;font-weight:500}.stog-value{font-size:1.25rem;font-weight:700;color:#e2e8f0}.stog-delayed{color:#ef4444}.stog-on-time{color:#10b981}.sources-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.toggle-all-btn{padding:.375rem .75rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#d4b896;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em}.toggle-all-btn:hover{background:#d4b89633;transform:translateY(-1px)}.source-list{display:flex;flex-direction:column;gap:.5rem;max-height:400px;overflow-y:auto;padding-right:.5rem}.source-list::-webkit-scrollbar{width:6px}.source-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.source-list::-webkit-scrollbar-thumb{background:#d4b8964d;border-radius:3px}.source-checkbox{display:flex;align-items:center;gap:.75rem;padding:.625rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;cursor:pointer;transition:all .3s ease}.source-checkbox:hover{background:#ffffff14;border-color:#d4b8964d}.source-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#D4B896}.source-name{flex:1;font-size:.875rem;color:#e2e8f0;font-weight:500}.source-count{padding:.25rem .5rem;background:#d4b89633;border-radius:12px;font-size:.75rem;font-weight:600;color:#d4b896}.news-content{flex:1;padding:2rem;overflow-y:auto;overflow-x:hidden;animation:fadeInUp .6s ease-out .2s both;width:100%;max-width:100%}.sources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1.5rem;width:100%;max-width:100%}.source-panel{background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.5rem;box-shadow:0 4px 16px #0003;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;max-height:800px;width:100%;max-width:100%;overflow:hidden}.source-panel:hover{transform:translateY(-4px);box-shadow:0 12px 32px #d4b8964d;border-color:#d4b89666}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:2px solid rgba(212,184,150,.2)}.panel-header h2{font-size:1.25rem;font-weight:700;color:#d4b896;letter-spacing:-.01em}.event-count{padding:.375rem .75rem;background:#d4b89633;border-radius:12px;font-size:.875rem;font-weight:600;color:#d4b896}.panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;color:#64748b;text-align:center;gap:1rem}.events-list{display:flex;flex-direction:column;gap:1rem;overflow-y:auto;padding-right:.5rem}.events-list::-webkit-scrollbar{width:6px}.events-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.events-list::-webkit-scrollbar-thumb{background:#d4b8964d;border-radius:3px}.event-card{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-left:3px solid #64748b;border-radius:12px;padding:1.25rem;transition:all .3s ease;overflow-wrap:break-word;word-wrap:break-word;width:100%;max-width:100%}.event-card:hover{background:#ffffff0f;transform:translate(4px)}.event-card.severity-critical{border-left-color:#ef4444}.event-card.severity-high{border-left-color:#f59e0b}.event-card.severity-medium{border-left-color:#3b82f6}.event-card.severity-low{border-left-color:#10b981}.card-header{margin-bottom:.75rem}.card-title-row{display:flex;align-items:flex-start;gap:.5rem}.title-icon{flex-shrink:0;margin-top:.125rem;color:#d4b896}.card-title{font-size:1rem;font-weight:600;color:#e2e8f0;line-height:1.5;margin:0;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.card-body{font-size:.875rem;line-height:1.6;color:#cbd5e1;margin-bottom:.75rem;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.card-body.collapsed{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-body.expanded{display:block}.expand-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.375rem .75rem;background:#d4b8961a;border:1px solid rgba(212,184,150,.3);border-radius:6px;color:#d4b896;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:.75rem}.expand-btn:hover{background:#d4b89633;transform:translateY(-1px)}.card-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.severity-badge,.status-badge,.region-badge,.date-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.severity-badge{background:#64748b33;color:#94a3b8}.severity-badge.severity-critical{background:#ef444433;color:#ef4444}.severity-badge.severity-high{background:#f59e0b33;color:#f59e0b}.severity-badge.severity-medium{background:#3b82f633;color:#3b82f6}.severity-badge.severity-low{background:#10b98133;color:#10b981}.status-badge{color:#fff}.region-badge,.date-badge{background:#ffffff1a;color:#cbd5e1}.source-link{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#d4b8961a;border:1px solid rgba(212,184,150,.3);border-radius:8px;color:#d4b896;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .3s ease}.source-link:hover{background:#d4b89633;border-color:#d4b896;transform:translateY(-2px)}.stog-card .card-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.stog-route{font-size:.875rem;color:#94a3b8;margin:.5rem 0 .75rem}.stog-delays{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:.5rem}.delay-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#ffffff0d;border-radius:6px;font-size:.8125rem}.delay-item strong{flex:1;color:#e2e8f0}.delay-time{color:#ef4444;font-weight:600}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#64748b;text-align:center;gap:1rem}.error-banner{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px;color:#ef4444;margin-bottom:2rem}.error-banner h3{margin:0 0 .25rem;font-size:1rem}.error-banner p{margin:0;font-size:.875rem;opacity:.8}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@media (max-width: 1200px){.sources-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}@media (max-width: 968px){.news-sidebar{position:fixed;top:0;left:0;bottom:0;z-index:200;box-shadow:4px 0 16px #0000004d;width:85%;max-width:320px;animation:none}.news-sidebar.closed{transform:translate(-100%)}.news-sidebar.open{transform:translate(0)}.sidebar-toggle{display:block}.news-content{padding:1.5rem 1rem;width:100%;max-width:100vw}.sources-grid{grid-template-columns:1fr;width:100%;max-width:100%}.header-top{padding:.75rem 1rem}.stats-bar{padding:.75rem 1rem;gap:.5rem}.stat-card{min-width:90px;padding:.5rem .75rem;gap:.5rem}.stat-icon{width:14px;height:14px}.stat-label{font-size:.625rem}.stat-value{font-size:1.125rem}.btn-text{display:none}.refresh-btn,.lang-toggle{padding:.5rem}.header-title h1{font-size:1.25rem}.header-subtitle{font-size:.75rem}.source-panel{max-height:none;width:100%;max-width:100%}}@media (max-width: 640px){.header-logo{width:32px;height:32px}.header-title h1{font-size:1rem}.header-subtitle{display:none}.header-top{padding:.625rem .75rem}.stats-bar{padding:.5rem .75rem;gap:.375rem}.stat-card{min-width:75px;padding:.375rem .5rem;gap:.375rem;flex-direction:column;align-items:flex-start}.stat-content{gap:.125rem}.stat-label{font-size:.5625rem;line-height:1}.stat-value{font-size:.9375rem;line-height:1}.stat-icon{display:none}.event-card{padding:.875rem}.card-title{font-size:.9375rem}.card-body{font-size:.8125rem}.panel-header h2{font-size:1rem}.event-count{font-size:.75rem;padding:.25rem .5rem}}@media (max-width: 480px){.header-top{padding:.5rem .625rem;gap:.5rem}.header-left{gap:.5rem}.header-logo{width:28px;height:28px}.header-title h1{font-size:.875rem}.header-actions{gap:.375rem}.refresh-btn,.lang-toggle{padding:.4375rem}.stats-bar{padding:.4375rem .625rem;gap:.3125rem}.stat-card{min-width:68px;padding:.3125rem .4375rem;gap:.25rem}.stat-label{font-size:.5rem}.stat-value{font-size:.8125rem}.news-content{padding:.75rem .5rem}.sources-grid{gap:.75rem}.source-panel{padding:.75rem}.panel-header{margin-bottom:.75rem;padding-bottom:.75rem}.panel-header h2{font-size:.9375rem}.event-count{font-size:.6875rem;padding:.25rem .5rem}.event-card{padding:.75rem}.card-title{font-size:.875rem}.card-body{font-size:.75rem;line-height:1.5}.card-meta{gap:.375rem}.severity-badge,.status-badge,.region-badge,.date-badge{font-size:.625rem;padding:.1875rem .5rem}.expand-btn{font-size:.6875rem;padding:.3125rem .625rem}.source-link{font-size:.75rem;padding:.4375rem .75rem}.sidebar-content{padding:1rem}.sidebar-title{font-size:.875rem}.filter-label{font-size:.75rem}.filter-select{font-size:.75rem;padding:.5rem}.source-name{font-size:.75rem}.source-count{font-size:.625rem}}
