*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--navy:#1a3a5c;--navy-dark:#0f2440;--blue-bg:#e6f1fb;--blue-text:#0c447c;--blue-mid:#185fa5;--coral-bg:#faece7;--coral-text:#712b13;--coral-mid:#993c1d;--teal-bg:#e1f5ee;--teal-text:#085041;--teal-mid:#0f6e56;--amber-bg:#faeeda;--amber-text:#633806;--amber-mid:#854f0b;--purple-bg:#eeedfe;--purple-text:#3c3489;--gray-bg:#f1efe8;--gray-text:#444441;--gray-mid:#5f5e5a;--page-bg:#eef0f4;--card-bg:#fff;--border:#d3d1c7;--text:#1a1a1a;--text-muted:#6b6b6b;--link:#185fa5;--radius:10px;--radius-sm:6px}body{background:var(--page-bg);color:var(--text);min-height:100vh;font-family:DM Sans,sans-serif}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.app{min-height:100vh}.site-header{background:var(--navy);z-index:100;padding:0 32px;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:flex-end;padding-top:16px;display:flex}.site-title{color:#fff;letter-spacing:-.3px;font-size:18px;font-weight:600}.site-sub{color:#8ab4d4;margin-top:2px;padding-bottom:2px;font-size:11px}.header-right{align-items:center;gap:12px;padding-bottom:8px;display:flex}.session-controls{color:#8ab4d4;white-space:nowrap;align-items:center;gap:8px;font-size:11px;display:flex}.signout-btn{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:20px;padding:5px 12px;font-family:DM Sans,sans-serif;font-size:11px}.signout-btn:hover{background:#ffffff24}.site-nav{display:flex}.nav-link{color:#8ab4d4;cursor:pointer;border-bottom:2px solid #0000;padding:10px 16px;font-size:12px;text-decoration:none;transition:color .15s,border-color .15s;display:block}.nav-link:hover{color:#fff;text-decoration:none}.nav-link.active{color:#fff;border-bottom-color:#378add}.edit-toggle{color:#8ab4d4;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #ffffff40;border-radius:20px;padding:5px 12px;font-family:DM Sans,sans-serif;font-size:11px;transition:all .15s}.edit-toggle:hover{color:#fff;background:#ffffff1a}.edit-toggle.on{color:#412402;background:#ef9f27;border-color:#ef9f27;font-weight:500}.app.editing .editable-text{cursor:text;background:#ef9f270f;border-radius:3px;outline:1.5px dashed #ef9f27}.app.editing .editable-text:hover{background:#ef9f271f}.app.editing .editable-text:focus{background:#fff;outline:2px solid #ef9f27;box-shadow:0 0 0 3px #ef9f2726}.app.editing .add-link-btn,.app.editing .delete-btn{display:inline-flex}.add-link-btn,.delete-btn{display:none}.add-link-btn{color:#ef9f27;cursor:pointer;background:0 0;border:1px dashed #ef9f27;border-radius:4px;align-items:center;gap:4px;width:fit-content;margin:4px 14px 10px;padding:3px 8px;font-family:DM Sans,sans-serif;font-size:11px}.daily-card>.add-link-btn,.misc-card>.add-link-btn{margin:4px 0 0}.add-link-btn:hover{background:#ef9f2714}.delete-btn{cursor:pointer;color:#993c1d;background:#faece7;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;margin-left:4px;font-family:DM Sans,sans-serif;font-size:10px;font-weight:600}.delete-btn:hover{color:#fff;background:#993c1d}.edit-banner{color:#633806;background:#faeeda;border-bottom:1px solid #ef9f27;align-items:center;gap:8px;padding:8px 32px;font-size:12px;display:none}.app.editing .edit-banner{display:flex}.page{max-width:1100px;margin:0 auto;padding:28px 32px 48px}.section-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-top:28px;margin-bottom:12px;font-size:10px;font-weight:600}section:first-child .section-label{margin-top:0}.daily-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.daily-card{background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--border);padding:14px 16px}.daily-top{align-items:center;gap:10px;margin-bottom:10px;display:flex}.daily-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;display:flex}.daily-icon.blue{background:var(--blue-bg)}.daily-icon.coral{background:var(--coral-bg)}.daily-icon.teal{background:var(--teal-bg)}.daily-title{font-size:13px;font-weight:600}.daily-links{flex-direction:column;gap:4px;display:flex}.link-row{align-items:center;gap:2px;display:flex}.daily-link{color:var(--link);flex:1;align-items:center;gap:5px;padding:2px 0;font-size:12px;display:flex}.daily-link:before,.browse-link:before{content:"→";color:var(--text-muted);flex-shrink:0;font-size:10px}.daily-link:hover{text-decoration:underline}.browse-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.browse-card{background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}.browse-head{align-items:center;gap:8px;padding:10px 14px;display:flex}.browse-head.blue{background:var(--blue-bg)}.browse-head.coral{background:var(--coral-bg)}.browse-head.teal{background:var(--teal-bg)}.browse-head.amber{background:var(--amber-bg)}.browse-head.purple{background:var(--purple-bg)}.browse-head.gray{background:var(--gray-bg)}.browse-icon{font-size:15px}.browse-title{font-size:12px;font-weight:600}.browse-head.blue .browse-title{color:var(--blue-text)}.browse-head.coral .browse-title{color:var(--coral-text)}.browse-head.teal .browse-title{color:var(--teal-text)}.browse-head.amber .browse-title{color:var(--amber-text)}.browse-head.purple .browse-title{color:var(--purple-text)}.browse-head.gray .browse-title{color:var(--gray-text)}.browse-body{flex-direction:column;gap:4px;padding:10px 14px;display:flex}.browse-link{color:var(--link);flex:1;align-items:center;gap:5px;font-size:12px;display:flex}.browse-link:hover{text-decoration:underline}.browse-divider{background:#f0f0f0;height:1px;margin:4px 0}.browse-more{color:var(--text-muted);font-size:11px;font-style:italic}.misc-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.misc-card{background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--border);padding:12px 14px}.misc-head{color:var(--gray-text);border-bottom:1px solid #f0f0f0;align-items:center;gap:6px;margin-bottom:8px;padding-bottom:7px;font-size:11px;font-weight:600;display:flex}.misc-link{color:var(--link);align-items:center;margin-bottom:3px;font-size:11px;display:flex}.misc-link a{color:var(--link);flex:1}.misc-link a:hover{text-decoration:underline}.site-footer{background:var(--navy-dark);text-align:right;padding:12px 32px}.site-footer span{color:#4a6a8a;font-size:10px}.toast{color:#fff;opacity:0;pointer-events:none;z-index:999;background:#1d9e75;border-radius:20px;padding:10px 18px;font-family:DM Sans,sans-serif;font-size:12px;transition:opacity .3s;position:fixed;bottom:24px;right:24px}.toast.show{opacity:1}.auth-page{background:var(--page-bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-page h1{color:var(--navy-dark);letter-spacing:-.3px;font-size:22px}.auth-page p{color:var(--text-muted);max-width:360px;font-size:13px;line-height:1.5}.login-panel{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:14px;width:min(100%,360px);padding:24px;display:flex}.login-kicker{color:var(--blue-mid);letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:600}.login-panel label{color:var(--gray-text);flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.login-panel input{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;padding:10px 11px;font-size:14px}.login-panel input:focus{border-color:var(--blue-mid);outline:none;box-shadow:0 0 0 3px #185fa524}.login-help{color:var(--text-muted);font-size:13px}.login-panel .code-input{letter-spacing:.24em;text-align:center;font-size:24px;font-weight:700}.login-message{color:var(--blue-mid);font-size:12px}.login-error{color:var(--coral-mid);font-size:12px}.login-panel button{background:var(--navy);border-radius:var(--radius-sm);color:#fff;cursor:pointer;font:inherit;border:0;padding:10px 12px;font-size:13px;font-weight:600}.login-panel button:disabled{cursor:wait;opacity:.7}.login-panel .text-button{color:var(--blue-mid);background:0 0;padding:0}.login-panel .text-button:hover{text-decoration:underline}@media (width<=850px){.header-inner{flex-direction:column;align-items:flex-start;gap:10px}.header-right{flex-direction:column;align-items:flex-start;width:100%}.site-nav{width:100%;overflow-x:auto}}@media (width<=700px){.daily-grid,.browse-grid,.misc-grid{grid-template-columns:1fr}.page{padding:16px}.site-header{padding:0 16px}.edit-banner{padding:8px 16px}}
