@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--uab-green:#1a5632;--uab-gold:#fdb913;--dragons-lair-green:#033319;--campus-green:#90d408;--evergreen:#306745;--sky-blue:#42caf0;--campus-green-20:#d7efa6;--campus-green-10:#eaf7d0;--campus-green-5:#f4fbe7;--uab-gold-20:#ffe6aa;--uab-gold-10:#fff2d2;--uab-gold-5:#fff8e8;--uab-gold-30:#ffd98a;--evergreen-20:#ace2bc;--evergreen-10:#d3f0db;--evergreen-5:#e8f7ed;--sky-blue-20:#bbecfa;--sky-blue-10:#dbf5fc;--sky-blue-5:#edf9fd;--white:#fff;--black:rgba(0,0,0,.8);--grey:#888;--light-grey:#ddd;--gray-500:#6b7280;--gray-200:#e5e7eb;--background:#f5f5f0;--foreground:var(--dragons-lair-green);--primary:var(--uab-green);--primary-foreground:var(--white);--secondary:var(--campus-green);--secondary-foreground:var(--dragons-lair-green);--muted:var(--gray-200);--muted-foreground:var(--gray-500);--accent:var(--campus-green);--accent-foreground:var(--dragons-lair-green);--destructive:#dc2626;--destructive-foreground:var(--white);--border:var(--light-grey);--input:var(--light-grey);--ring:var(--uab-green);--radius:.5rem;--font-sans:"Inter","Aktiv Grotesk",ui-sans-serif,system-ui,sans-serif;--font-serif:"Kulturista",ui-serif,Georgia,serif;--font-base-size:16px;--font-small:13px;--font-tiny:11px}*{box-sizing:border-box;margin:0;padding:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-sans);font-size:var(--font-base-size);color:var(--foreground);background-color:var(--background);line-height:1.5}a{color:var(--uab-green);text-decoration:none;transition:color .2s}a:hover{color:var(--dragons-lair-green);text-decoration:underline}a:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.skip-link{z-index:10000;background:var(--primary);color:var(--primary-foreground);border-radius:var(--radius);padding:.5rem 1rem;font-weight:600;transition:top .2s;position:absolute;top:-100%;left:.5rem}.skip-link:focus-visible{outline:2px solid var(--ring);outline-offset:2px;top:.5rem}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.header-banner{background:linear-gradient(135deg,var(--uab-green)0%,var(--dragons-lair-green)100%);color:var(--white);padding:2rem 0}.header-banner h1{font-family:var(--font-serif);color:var(--white);margin-bottom:.25rem;font-size:2.5rem;font-weight:700}.header-banner p{opacity:.85;font-size:1.1rem}.header-banner a{color:var(--white);text-decoration:none}.header-banner a:hover{color:var(--uab-gold);text-decoration:underline}.header-banner a:focus-visible{outline:2px solid var(--uab-gold);outline-offset:2px}.header-banner .header-actions,.header-banner .auth-links{align-items:center;gap:1rem;display:flex}.header-banner .auth-links .auth-link{padding:.25rem 0;font-weight:500}.header-banner .auth-links .auth-link.auth-link-primary{background:var(--uab-gold);color:var(--dragons-lair-green);border-radius:var(--radius);padding:.375rem .75rem}.header-banner .auth-links .auth-link.auth-link-primary:hover{background:var(--white);color:var(--dragons-lair-green)}.header-banner .user-menu .user-name{font-weight:500}.container{max-width:72rem;margin:0 auto;padding:0 1rem}.page{padding:1.5rem 0}.container.page{min-height:2rem;padding:2rem 1rem}.container.page>*+*{margin-top:1.5rem}.digg-layout{grid-template-columns:1fr 300px;align-items:start;gap:1.5rem;display:grid}.main-column{min-width:0}.sort-tabs{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);gap:0;margin-bottom:1rem;display:flex;overflow:hidden}.sort-tab{color:var(--gray-500);font-family:var(--font-sans);font-size:var(--font-small);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;border:none;flex:1;padding:.625rem 1.25rem;font-weight:600;transition:background-color .15s,color .15s}.sort-tab:hover{background:var(--evergreen-5);color:var(--uab-green)}.sort-tab.active{background:var(--uab-green);color:var(--white)}.digg-list{flex-direction:column;display:flex}.digg-item{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);align-items:stretch;margin-bottom:.5rem;transition:border-color .15s;display:flex}.digg-item:hover{border-color:var(--campus-green-20)}.digg-item.pinned{background:var(--gray-200)}.pinned-badge{font-size:var(--font-tiny);text-transform:uppercase;letter-spacing:.04em;background:var(--gray-500);color:var(--white);border:1px solid var(--gray-500);border-radius:3px;margin-bottom:.375rem;padding:.125rem .5rem;font-weight:600;line-height:1.3;display:inline-block}.digg-rank{min-width:44px;color:var(--gray-500);border-right:1px solid var(--border);justify-content:center;align-items:center;font-size:1.125rem;font-weight:700;display:flex}.digg-vote-box{background:var(--evergreen-5);border-right:1px solid var(--border);flex-direction:column;justify-content:center;align-items:center;gap:.125rem;min-width:72px;padding:.75rem .5rem;transition:background-color .2s;display:flex}.digg-vote-box.voted{background:var(--campus-green)}.digg-vote-box.voted .digg-arrow,.digg-vote-box.voted .digg-count{color:var(--white)}.digg-vote-box.voted .digg-btn{color:var(--white);background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.3)}.digg-arrow{color:var(--uab-green);font-size:1.25rem;line-height:1}.digg-count{color:var(--uab-green);font-size:1.5rem;font-weight:800;line-height:1.1}.digg-btn{font-family:var(--font-sans);font-size:var(--font-tiny);text-transform:lowercase;background:var(--white);color:var(--uab-green);border:1px solid var(--evergreen-20);cursor:pointer;letter-spacing:.02em;border-radius:3px;margin-top:.125rem;padding:.125rem .625rem;font-weight:700;transition:all .15s}.digg-btn:hover:not(:disabled){background:var(--campus-green-10);border-color:var(--campus-green)}.digg-btn:disabled{cursor:default}.stage-badge{font-size:var(--font-tiny);text-transform:capitalize;border-radius:3px;padding:.125rem .5rem;font-weight:600;line-height:1.3;display:inline-block}.stage-badge.stage-ideate{background:var(--evergreen-10);color:var(--black);border:1px solid var(--evergreen-20)}.stage-badge.stage-review{background:var(--sky-blue-10);color:var(--black);border:1px solid var(--sky-blue-20)}.stage-badge.stage-progress{background:var(--uab-gold-10);color:var(--dragons-lair-green);border:1px solid var(--uab-gold-20)}.stage-badge.stage-completed{background:var(--uab-gold-30);color:var(--dragons-lair-green);border:1px solid var(--uab-gold-20)}.stage-badge.stage-default{background:var(--gray-200);color:var(--gray-500);border:1px solid var(--border)}.digg-content{min-width:0;color:inherit;flex-direction:column;flex:1;justify-content:center;padding:.875rem 1rem;text-decoration:none;display:flex}.digg-content:hover{text-decoration:none}.digg-content:hover .digg-title{color:var(--campus-green)}.digg-content .digg-meta{margin-top:auto}.digg-title{font-family:var(--font-serif);color:var(--uab-green);word-wrap:break-word;margin-bottom:.25rem;font-size:1.125rem;font-weight:600;line-height:1.3;transition:color .15s}.digg-text{font-size:var(--font-small);color:var(--gray-500);word-wrap:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.375rem;line-height:1.5;display:-webkit-box;overflow:hidden}.digg-meta{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.digg-meta .author-name{font-size:var(--font-tiny);color:var(--gray-500);margin-left:auto}.digg-time{font-size:var(--font-tiny);color:var(--gray-500);border:1px solid var(--gray-200);border-radius:3px;padding:.125rem .5rem;display:inline-block}.digg-comments-badge{font-size:var(--font-tiny);color:var(--uab-green);background:var(--evergreen-5);border:1px solid var(--evergreen-20);border-radius:3px;padding:.125rem .5rem;font-weight:600;display:inline-block}.sidebar{position:sticky;top:1rem}.sidebar-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1rem;overflow:hidden}.sidebar-card-header{padding:1rem 1.25rem .5rem}.sidebar-card-title{font-family:var(--font-serif);color:var(--uab-green);margin:0;font-size:1.125rem;font-weight:600}.sidebar-card-body{padding:0 1.25rem 1.25rem}.sidebar-intro{font-size:var(--font-small);color:var(--gray-500);margin-bottom:1rem;line-height:1.5}.dialog-trigger-btn{justify-content:center;width:100%}.sidebar-card-body a.submit-btn,.sidebar-card-body a.submit-btn:hover{color:var(--white);text-decoration:none}.search-input{width:100%;font-family:var(--font-sans);font-size:var(--font-small);color:var(--foreground);background:var(--white);border:1px solid var(--input);border-radius:var(--radius);padding:.625rem .875rem;transition:border-color .2s,box-shadow .2s}.search-input::placeholder{color:var(--muted-foreground)}.search-input:focus{border-color:var(--ring);box-shadow:0 0 0 2px var(--campus-green-10);outline:none}.stats-row{gap:1rem;display:flex}.stat-box{text-align:center;background:var(--evergreen-5);border-radius:var(--radius);flex:1;padding:.75rem}.stat-value{color:var(--uab-green);font-size:2rem;font-weight:800;line-height:1.2;display:block}.stat-label{font-size:var(--font-tiny);color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;font-weight:600;display:block}.form-group{margin-bottom:.5rem}.form-label{font-size:var(--font-small);color:var(--foreground);margin-bottom:.375rem;font-weight:600;display:block}.idea-textarea{border:1px solid var(--input);border-radius:var(--radius);width:100%;min-height:100px;font-family:var(--font-sans);font-size:var(--font-small);resize:vertical;padding:.75rem;transition:border-color .2s}.idea-textarea:focus-visible{border-color:var(--ring);box-shadow:0 0 0 2px var(--campus-green-10);outline:none}.idea-textarea.warning{border-color:var(--uab-gold)}.idea-textarea.error{border-color:var(--destructive)}.form-footer{justify-content:space-between;align-items:center;display:flex}.char-counter{font-size:var(--font-tiny);color:var(--muted-foreground)}.char-counter.warning{color:var(--uab-gold)}.char-counter.error{color:var(--destructive)}.submit-btn{background:var(--uab-green);color:var(--white);border-radius:var(--radius);cursor:pointer;font-family:var(--font-sans);font-weight:600;font-size:var(--font-small);border:none;padding:.5rem 1.25rem;transition:background-color .15s,opacity .15s}.submit-btn:hover:not(:disabled){background:var(--dragons-lair-green)}.submit-btn:disabled{opacity:.4;cursor:not-allowed}.dialog-overlay{z-index:50;overscroll-behavior:contain;background-color:rgba(0,0,0,.5);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.idea-dialog-content{background:var(--white);border-radius:var(--radius);z-index:51;width:90vw;max-width:500px;padding:1.5rem;position:relative;box-shadow:0 20px 40px rgba(0,0,0,.2)}.idea-dialog-content .dialog-title{font-family:var(--font-serif);color:var(--uab-green);margin-bottom:1rem;font-size:1.5rem;font-weight:700}.idea-dialog-content .dialog-input{border:1px solid var(--input);border-radius:var(--radius);width:100%;font-family:var(--font-sans);font-size:var(--font-small);background:var(--white);padding:.75rem;transition:border-color .2s}.idea-dialog-content .dialog-input:focus-visible{border-color:var(--ring);box-shadow:0 0 0 2px var(--campus-green-10);outline:none}.idea-dialog-content .dialog-alert{border-radius:var(--radius);font-size:var(--font-small);margin-bottom:1rem;padding:.75rem 1rem}.idea-dialog-content .dialog-alert-error{border:1px solid var(--destructive);color:var(--destructive);background:#fef2f2}.idea-dialog-content .dialog-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:.75rem;margin-top:1.25rem;padding-top:1rem;display:flex}.dialog-footer{justify-content:flex-end;gap:.75rem;margin-top:.75rem;display:flex}.btn-cancel{background:var(--white);color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;font-family:var(--font-sans);font-weight:500;font-size:var(--font-small);padding:.5rem 1.25rem;transition:background .15s}.btn-cancel:hover{background:var(--gray-200)}.btn-cancel:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.dialog-input{border:1px solid var(--input);border-radius:var(--radius);width:100%;font-family:var(--font-sans);font-size:var(--font-small);background:var(--white);padding:.75rem;transition:border-color .2s}.dialog-input:focus-visible{border-color:var(--ring);box-shadow:0 0 0 2px var(--campus-green-10);outline:none}.dialog-textarea{border:1px solid var(--input);border-radius:var(--radius);width:100%;min-height:120px;font-family:var(--font-sans);font-size:var(--font-small);resize:vertical;background:var(--white);padding:.75rem;transition:border-color .2s}.dialog-textarea:focus-visible{border-color:var(--ring);box-shadow:0 0 0 2px var(--campus-green-10);outline:none}.empty-state{text-align:center;color:var(--muted-foreground);background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:3rem 2rem}.error-state{text-align:center;color:var(--destructive);padding:2rem}.loading{text-align:center;color:var(--muted-foreground);padding:2rem}.navbar{background:var(--white);border-bottom:2px solid var(--uab-green);padding:.75rem 0}.navbar .container{justify-content:space-between;align-items:center;display:flex}.navbar .navbar-brand{font-family:var(--font-serif);color:var(--uab-green);align-items:center;font-size:1.25rem;font-weight:700;text-decoration:none;display:flex}.navbar .navbar-brand:hover{color:var(--dragons-lair-green)}.navbar .navbar-logo{width:auto;height:2.5rem;display:block}.navbar .nav.navbar-nav{margin:0;padding:0}.navbar .nav{align-items:center;gap:1.5rem;list-style:none;display:flex}.navbar .nav .nav-item .nav-link{color:var(--foreground);font-weight:500;font-size:var(--font-small);text-decoration:none;transition:color .2s}.navbar .nav .nav-item .nav-link:hover{color:var(--uab-green)}.navbar .nav .nav-item .nav-logout-btn{font:inherit;cursor:pointer;color:var(--foreground);font-weight:500;font-size:var(--font-small);background:0 0;border:none;padding:0}.navbar .nav .nav-item .nav-logout-btn:hover{color:var(--uab-green)}.navbar .nav .nav-item .nav-logout-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.footer{background:var(--white);border-top:1px solid var(--border);text-align:center;margin-top:3rem;padding:1.5rem 0}.footer .logo-font{font-family:var(--font-serif);color:var(--uab-green);font-weight:700;font-size:var(--font-small)}.footer .attribution{color:var(--muted-foreground);font-size:var(--font-tiny);margin-top:.25rem;display:block}.footer .footer-link{color:var(--muted-foreground);font-size:var(--font-tiny);margin-top:.5rem;text-decoration:none;display:inline-block}.footer .footer-link:hover{color:var(--uab-green);text-decoration:underline}.footer .footer-link:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.auth-page{justify-content:center;align-items:flex-start;min-height:60vh;padding:2rem 0 3rem;display:flex}.auth-page .container.page{width:100%;max-width:24rem;margin:0 auto;padding:0 1rem}.auth-page .row{margin:0;padding:0;display:block}.auth-page .col-md-6.offset-md-3,.auth-page .col-xs-12{width:100%;max-width:none;margin:0;padding:0}.auth-page .text-xs-center{text-align:center}.auth-page h1{font-family:var(--font-serif);color:var(--uab-green);text-align:center;margin:0 0 1.5rem;font-size:1.75rem;font-weight:700}.auth-page .error-messages{min-height:1.5em;font-size:var(--font-small);color:var(--destructive);text-align:center;margin-bottom:1rem}.auth-page form{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.06)}.auth-page .form-group{border:none;margin-bottom:.5rem;padding:0}.auth-page .form-group:last-of-type{margin-bottom:.5rem}.auth-page .form-control{width:100%;font-family:var(--font-sans);color:var(--foreground);background:var(--white);border:1px solid var(--input);border-radius:var(--radius);padding:.75rem 1rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.auth-page .form-control::placeholder{color:var(--muted-foreground)}.auth-page .form-control:focus{border-color:var(--ring);box-shadow:0 0 0 2px var(--campus-green-10);outline:none}.auth-page .form-control:focus-visible{border-color:var(--ring);box-shadow:0 0 0 2px var(--campus-green-10);outline:none}.auth-page .form-control-lg{padding:.875rem 1rem;font-size:1rem}.auth-page a{font-size:var(--font-small);color:var(--uab-green);margin-bottom:1rem;display:inline-block}.auth-page a:hover{color:var(--dragons-lair-green);text-decoration:underline}.auth-page .btn{width:100%;font-family:var(--font-sans);text-align:center;border-radius:var(--radius);cursor:pointer;border:none;padding:.75rem 1.25rem;font-size:1rem;font-weight:600;transition:background-color .2s,opacity .2s;display:inline-block}.auth-page .btn-lg{padding:.875rem 1.25rem}.auth-page .btn-primary{background:var(--uab-green);color:var(--white)}.auth-page .btn-primary:hover{background:var(--dragons-lair-green)}.auth-page .btn-primary:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.auth-page .pull-xs-right{float:none;display:block}@media (width<=768px){.header-banner{padding:1.5rem 0}.header-banner h1{font-size:1.75rem}.header-banner p{font-size:.95rem}.digg-layout{grid-template-columns:1fr}.sidebar{order:-1;position:static}.digg-rank{min-width:32px;font-size:.875rem}.digg-vote-box{min-width:56px;padding:.5rem .375rem}.digg-count{font-size:1.25rem}.form-footer{flex-direction:column;align-items:stretch;gap:.75rem}.form-footer .submit-btn{text-align:center}}.detail-page .container{max-width:48rem}.back-link{color:var(--uab-green);font-size:var(--font-small);margin-bottom:1.25rem;font-weight:500;text-decoration:none;display:inline-block}.back-link:hover{text-decoration:underline}.detail-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.25rem;overflow:hidden}.detail-card-body{gap:1rem;padding:1.25rem;display:flex}.detail-vote-box{background:var(--evergreen-5);border:1px solid var(--evergreen-20);border-radius:var(--radius);flex-direction:column;justify-content:center;align-items:center;gap:.125rem;min-width:80px;padding:1rem .75rem;display:flex}.detail-vote-arrow{color:var(--uab-green);font-size:1.5rem;line-height:1}.detail-vote-count{color:var(--uab-green);font-size:2rem;font-weight:800;line-height:1.2}.detail-vote-label{font-size:var(--font-tiny);color:var(--uab-green);text-transform:lowercase;font-weight:600}.detail-vote-btn{font-family:var(--font-sans);font-size:var(--font-tiny);text-transform:lowercase;background:var(--white);color:var(--uab-green);border:1px solid var(--evergreen-20);cursor:pointer;letter-spacing:.02em;border-radius:3px;margin-top:.125rem;padding:.125rem .625rem;font-weight:700;transition:all .15s}.detail-vote-btn:hover:not(:disabled){background:var(--campus-green-10);border-color:var(--campus-green)}.detail-vote-btn:disabled{cursor:default}.detail-vote-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.detail-vote-box.voted{background:var(--campus-green);border-color:var(--campus-green)}.detail-vote-box.voted .detail-vote-arrow,.detail-vote-box.voted .detail-vote-count{color:var(--white)}.detail-vote-box.voted .detail-vote-btn{color:var(--white);background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.3)}.detail-idea-content{flex-direction:column;flex:1;justify-content:center;display:flex}.detail-idea-title{font-family:var(--font-serif);color:var(--uab-green);margin-bottom:.75rem;font-size:1.5rem;font-weight:700;line-height:1.3}.detail-idea-text{color:var(--foreground);margin-bottom:.75rem;font-size:1.125rem;line-height:1.6}.detail-tags{flex-wrap:wrap;gap:.375rem;margin-bottom:.4rem;display:flex}.detail-tag{font-size:var(--font-tiny);color:var(--uab-green);background:var(--campus-green-10);border:1px solid var(--campus-green-20);border-radius:3px;padding:.2rem .5rem;font-weight:500;line-height:1.3;display:inline-block}.detail-meta-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.8rem;display:flex}.detail-meta-info{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.detail-time{font-size:var(--font-tiny);color:var(--gray-500);border:1px solid var(--gray-200);border-radius:3px;width:fit-content;padding:.125rem .5rem;display:inline-block}.stage-select{font-family:var(--font-sans);font-size:var(--font-tiny);text-transform:capitalize;appearance:none;cursor:pointer;color:var(--black);background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - .55rem),calc(100% - .35rem);background-repeat:no-repeat;background-size:.35rem .35rem;border-radius:3px;padding:.125rem 1.5rem .125rem .5rem;font-weight:600}.stage-select:disabled{cursor:default;opacity:.7}.stage-select:focus{outline:2px solid var(--sky-blue-20);outline-offset:1px}.detail-card-actions{justify-content:flex-end;gap:.5rem;display:flex}.btn-flag,.btn-pin,.btn-edit,.btn-delete,.btn-toggle-comments{font-size:var(--font-small);color:var(--gray-500);background:var(--white);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:.375rem .75rem;font-weight:500;transition:color .2s,border-color .2s,background-color .2s}.btn-flag:hover:not(:disabled),.btn-pin:hover:not(:disabled),.btn-edit:hover:not(:disabled),.btn-delete:hover:not(:disabled),.btn-toggle-comments:hover:not(:disabled){color:var(--uab-green);border-color:var(--evergreen-20);background:var(--evergreen-5)}.btn-flag:disabled,.btn-pin:disabled,.btn-edit:disabled,.btn-delete:disabled,.btn-toggle-comments:disabled{cursor:default;color:var(--gray-500);opacity:.8}.btn-flag:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.btn-pin:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.btn-edit:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.btn-delete:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.btn-toggle-comments:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.comments-section{margin-top:.5rem}.comments-heading{font-family:var(--font-serif);color:var(--uab-green);margin-bottom:1rem;font-size:1.25rem;font-weight:600}.comment-form-card{margin-bottom:1.5rem}.no-comments{text-align:center;color:var(--muted-foreground);background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:2rem}.comment-list{flex-direction:column;gap:.5rem;display:flex}.comment-item{background:var(--white);border:1px solid var(--border);border-left:3px solid var(--uab-green);border-radius:var(--radius);padding:1rem 1.25rem}.comment-item.pinned{background:var(--gray-100);border-left-color:var(--gold)}.comment-text{font-size:var(--font-base-size);color:var(--foreground);word-wrap:break-word;margin-bottom:.5rem;line-height:1.6}.comment-meta{font-size:var(--font-tiny);color:var(--gray-500);align-items:center;gap:.375rem;display:flex}.comment-author{color:var(--uab-green);font-weight:600}.comment-time:before{content:"·";margin-right:.375rem}@media (width<=768px){.detail-card-body{flex-direction:column;gap:1rem}.detail-vote-box{min-width:unset;flex-direction:row;gap:.75rem}}.admin-page{background:var(--background);min-height:100vh}.admin-page .admin-banner{background:linear-gradient(135deg,var(--dragons-lair-green)0%,var(--uab-green)100%)}.admin-page .admin-header{border-bottom:1px solid var(--border);background:var(--white);margin-bottom:0;padding:1.5rem 1rem}.admin-page .admin-header h1{font-family:var(--font-serif);color:var(--uab-green);margin:0 0 .25rem;font-size:1.75rem;font-weight:700}.admin-page .admin-header p{font-size:var(--font-small);color:var(--muted-foreground);margin:0}.admin-page .admin-tabs{border-bottom:2px solid var(--border);background:var(--white);flex-wrap:wrap;gap:.25rem;margin-bottom:1.5rem;padding:1rem;display:flex}.admin-page .admin-tabs button{font-family:var(--font-sans);font-size:var(--font-small);color:var(--muted-foreground);border-radius:var(--radius);cursor:pointer;background:0 0;border:none;padding:.5rem 1rem;font-weight:600;transition:color .2s,background-color .2s}.admin-page .admin-tabs button:hover,.admin-page .admin-tabs button.active{color:var(--uab-green);background:var(--evergreen-5)}.admin-page .admin-tabs button:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.admin-page .admin-content{max-width:72rem;margin:0 auto;padding:0 1rem 2rem}.admin-page .overview-tab h2,.admin-page .flags-tab h2,.admin-page .moderation-tab h2,.admin-page .export-tab h2,.admin-page .users-tab h2{font-family:var(--font-serif);color:var(--uab-green);margin:0 0 1rem;font-size:1.25rem;font-weight:600}.admin-page .overview-tab .empty-state,.admin-page .flags-tab .empty-state,.admin-page .moderation-tab .empty-state,.admin-page .export-tab .empty-state,.admin-page .users-tab .empty-state{text-align:center;color:var(--muted-foreground);background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:2rem}.admin-page .overview-tab .error,.admin-page .flags-tab .error,.admin-page .moderation-tab .error,.admin-page .export-tab .error,.admin-page .users-tab .error{color:var(--destructive);border:1px solid var(--destructive);border-radius:var(--radius);background:#fef2f2;padding:1rem}.admin-page .stats-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.admin-page .stat-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:1.25rem;box-shadow:0 1px 3px rgba(0,0,0,.05)}.admin-page .stat-card h3{font-size:var(--font-small);color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.03em;margin:0 0 .5rem;font-weight:600}.admin-page .stat-card .stat-number{color:var(--uab-green);font-size:2rem;font-weight:800;line-height:1.2}.admin-page .admin-export-panel{background:var(--white);border:1px solid var(--evergreen-20);border-radius:var(--radius);gap:1rem;padding:1.25rem;display:grid;box-shadow:0 1px 3px rgba(0,0,0,.05)}.admin-page .admin-export-heading h3{color:var(--uab-green);margin:0 0 .35rem;font-size:1rem;font-weight:700}.admin-page .admin-export-heading p{font-size:var(--font-small);color:var(--muted-foreground);margin:0}.admin-page .admin-export-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.admin-page .admin-export-btn{text-align:center;width:100%;padding:.625rem .875rem}.admin-page .admin-export-status{font-size:var(--font-small);border-radius:var(--radius);border:1px solid var(--evergreen-20);background:var(--evergreen-5);color:var(--uab-green);margin:0;padding:.625rem .75rem}.admin-page .admin-export-status.error{color:var(--destructive);border-color:var(--destructive);background:#fef2f2}.admin-page .admin-export-status.success{color:var(--uab-green);background:var(--evergreen-5);border-color:var(--evergreen-20)}@media (width<=640px){.admin-page .admin-export-actions{grid-template-columns:1fr}}.admin-page .flagged-items-list{flex-direction:column;gap:1rem;display:flex}.admin-page .flagged-item{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex;box-shadow:0 1px 3px rgba(0,0,0,.05)}.admin-page .flagged-info{flex:1;min-width:0}.admin-page .flagged-info .flag-badge{font-size:var(--font-tiny);color:var(--white);background:var(--uab-gold);border-radius:3px;margin-right:.5rem;padding:.2rem .5rem;font-weight:700;display:inline-block}.admin-page .flagged-info .content-type{font-size:var(--font-tiny);color:var(--muted-foreground);text-transform:capitalize}.admin-page .flagged-info .content-preview{font-size:var(--font-small);color:var(--foreground);white-space:pre-wrap;word-break:break-word;margin:.5rem 0 0;line-height:1.4}.admin-page .flagged-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin-page .off-topic-list{flex-direction:column;gap:1rem;display:flex}.admin-page .off-topic-item{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex;box-shadow:0 1px 3px rgba(0,0,0,.05)}.admin-page .off-topic-item .idea-content{flex:1;min-width:0}.admin-page .off-topic-item .idea-content h3{color:var(--uab-green);margin:0 0 .25rem;font-size:1rem;font-weight:600}.admin-page .off-topic-item .idea-content p{font-size:var(--font-small);color:var(--foreground);margin:0 0 .5rem;line-height:1.4}.admin-page .off-topic-item .idea-content .author{font-size:var(--font-tiny);color:var(--muted-foreground)}.admin-page .moderation-actions{flex-wrap:wrap;gap:.5rem;display:flex}.admin-page .users-tab .users-table{border-collapse:collapse;background:var(--white);border:1px solid var(--border);border-radius:var(--radius);width:100%;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.05)}.admin-page .users-tab .users-table thead{background:var(--evergreen-5)}.admin-page .users-tab .users-table thead th{font-size:var(--font-small);color:var(--uab-green);text-align:left;border-bottom:2px solid var(--evergreen-20);padding:.75rem 1rem;font-weight:700}.admin-page .users-tab .users-table tbody tr{border-bottom:1px solid var(--border)}.admin-page .users-tab .users-table tbody tr:last-child{border-bottom:none}.admin-page .users-tab .users-table tbody tr:hover{background:var(--evergreen-5)}.admin-page .users-tab .users-table td{font-size:var(--font-small);color:var(--foreground);padding:.75rem 1rem}.admin-page .users-tab .users-table select{font-size:var(--font-small);border:1px solid var(--border);border-radius:var(--radius);background:var(--white);color:var(--foreground);padding:.375rem .5rem}.admin-page .users-tab .users-table select:focus-visible{outline:2px solid var(--ring);outline-offset:1px}.btn-primary{background:var(--uab-green);color:var(--white);border-radius:var(--radius);font-size:var(--font-small);cursor:pointer;border:none;padding:.5rem 1rem;font-weight:600;transition:background-color .2s}.btn-primary:hover{background:var(--dragons-lair-green)}.btn-primary:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.btn-danger{background:var(--destructive);color:var(--white);border-radius:var(--radius);font-size:var(--font-small);cursor:pointer;border:none;padding:.5rem 1rem;font-weight:600;transition:opacity .2s}.btn-danger:hover{opacity:.9}.btn-danger.confirm{background:#b91c1c;animation:1s infinite pulse}.btn-danger:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.btn-warning{background:var(--uab-gold);color:var(--dragons-lair-green);border-radius:var(--radius);font-size:var(--font-small);cursor:pointer;border:none;padding:.5rem 1rem;font-weight:600}.btn-warning:hover{opacity:.9}.btn-warning.confirm{animation:1s infinite pulse}.btn-secondary{background:var(--white);color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius);font-size:var(--font-small);cursor:pointer;padding:.5rem 1rem;font-weight:500;transition:background-color .2s,border-color .2s}.btn-secondary:hover{background:var(--gray-200);border-color:var(--gray-200)}.btn-secondary:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.admin-login{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);max-width:400px;margin:2rem auto;padding:2rem;box-shadow:0 2px 8px rgba(0,0,0,.1)}.admin-login h2{color:var(--uab-green);margin-bottom:1.5rem}.admin-login .admin-input{border:2px solid var(--input);border-radius:var(--radius);width:100%;padding:.75rem 1rem;font-size:1rem}.admin-login .admin-input:focus-visible{border-color:var(--ring);outline:none}.admin-login .error-message{color:var(--destructive);margin:1rem 0}.admin-ideas-list h3{color:var(--foreground);margin-bottom:1rem}.admin-ideas-grid{flex-direction:column;gap:1rem;display:flex}.admin-idea-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex;box-shadow:0 1px 3px rgba(0,0,0,.05)}.admin-idea-card .idea-info{flex:1}.admin-idea-card .idea-text{margin-bottom:.5rem}.admin-idea-card .idea-meta{font-size:var(--font-small);color:var(--muted-foreground);gap:1rem;display:flex}.admin-idea-card .vote-count{color:var(--uab-green);font-weight:500}.btn-delete{color:var(--destructive);border:1px solid var(--destructive);border-radius:var(--radius);font-size:var(--font-small);cursor:pointer;background:0 0;padding:.5rem 1rem;font-weight:500;transition:background-color .2s,color .2s}.btn-delete:hover{background:var(--destructive);color:var(--white)}.btn-delete:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.bulk-actions{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:2rem;padding:1.5rem;box-shadow:0 1px 3px rgba(0,0,0,.05)}.bulk-actions h3{color:var(--foreground);margin-bottom:1rem}.bulk-actions .action-buttons{flex-wrap:wrap;gap:1rem;display:flex}